summaryrefslogtreecommitdiffstats
path: root/WebCore/html/HTMLFrameSetElement.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/html/HTMLFrameSetElement.cpp')
-rw-r--r--WebCore/html/HTMLFrameSetElement.cpp220
1 files changed, 0 insertions, 220 deletions
diff --git a/WebCore/html/HTMLFrameSetElement.cpp b/WebCore/html/HTMLFrameSetElement.cpp
deleted file mode 100644
index 75fd516..0000000
--- a/WebCore/html/HTMLFrameSetElement.cpp
+++ /dev/null
@@ -1,220 +0,0 @@
-/**
- * This file is part of the DOM implementation for KDE.
- *
- * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
- * (C) 1999 Antti Koivisto (koivisto@kde.org)
- * (C) 2000 Simon Hausmann (hausmann@kde.org)
- * (C) 2001 Dirk Mueller (mueller@kde.org)
- * Copyright (C) 2004, 2006 Apple Computer, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "HTMLFrameSetElement.h"
-
-#include "CSSPropertyNames.h"
-#include "Document.h"
-#include "Event.h"
-#include "EventNames.h"
-#include "HTMLNames.h"
-#include "Length.h"
-#include "Length.h"
-#include "MouseEvent.h"
-#include "RenderFrameSet.h"
-#include "Text.h"
-
-namespace WebCore {
-
-using namespace HTMLNames;
-
-HTMLFrameSetElement::HTMLFrameSetElement(Document *doc)
- : HTMLElement(framesetTag, doc)
- , m_rows(0)
- , m_cols(0)
- , m_totalRows(1)
- , m_totalCols(1)
- , m_border(6)
- , m_borderSet(false)
- , m_borderColorSet(false)
- , frameborder(true)
- , frameBorderSet(false)
- , noresize(false)
-{
-}
-
-HTMLFrameSetElement::~HTMLFrameSetElement()
-{
- if (m_rows)
- delete [] m_rows;
- if (m_cols)
- delete [] m_cols;
-}
-
-bool HTMLFrameSetElement::checkDTD(const Node* newChild)
-{
- // FIXME: Old code had adjacent double returns and seemed to want to do something with NOFRAMES (but didn't).
- // What is the correct behavior?
- if (newChild->isTextNode())
- return static_cast<const Text*>(newChild)->containsOnlyWhitespace();
- return newChild->hasTagName(framesetTag) || newChild->hasTagName(frameTag);
-}
-
-bool HTMLFrameSetElement::mapToEntry(const QualifiedName& attrName, MappedAttributeEntry& result) const
-{
- if (attrName == bordercolorAttr) {
- result = eUniversal;
- return true;
- }
-
- return HTMLElement::mapToEntry(attrName, result);
-}
-
-void HTMLFrameSetElement::parseMappedAttribute(MappedAttribute *attr)
-{
- if (attr->name() == rowsAttr) {
- if (!attr->isNull()) {
- if (m_rows) delete [] m_rows;
- m_rows = newLengthArray(attr->value().string(), m_totalRows);
- setChanged();
- }
- } else if (attr->name() == colsAttr) {
- if (!attr->isNull()) {
- delete [] m_cols;
- m_cols = newLengthArray(attr->value().string(), m_totalCols);
- setChanged();
- }
- } else if (attr->name() == frameborderAttr) {
- if (!attr->isNull()) {
- // false or "no" or "0"..
- if (attr->value().toInt() == 0) {
- frameborder = false;
- m_border = 0;
- }
- frameBorderSet = true;
- } else {
- frameborder = false;
- frameBorderSet = false;
- }
- } else if (attr->name() == noresizeAttr) {
- noresize = true;
- } else if (attr->name() == borderAttr) {
- if (!attr->isNull()) {
- m_border = attr->value().toInt();
- if (!m_border)
- frameborder = false;
- m_borderSet = true;
- } else
- m_borderSet = false;
- } else if (attr->name() == bordercolorAttr) {
- m_borderColorSet = attr->decl();
- if (!attr->decl() && !attr->isEmpty()) {
- addCSSColor(attr, CSSPropertyBorderColor, attr->value());
- m_borderColorSet = true;
- }
- } else if (attr->name() == onloadAttr) {
- document()->setWindowInlineEventListenerForTypeAndAttribute(eventNames().loadEvent, attr);
- } else if (attr->name() == onbeforeunloadAttr) {
- document()->setWindowInlineEventListenerForTypeAndAttribute(eventNames().beforeunloadEvent, attr);
- } else if (attr->name() == onunloadAttr) {
- document()->setWindowInlineEventListenerForTypeAndAttribute(eventNames().unloadEvent, attr);
- } else
- HTMLElement::parseMappedAttribute(attr);
-}
-
-bool HTMLFrameSetElement::rendererIsNeeded(RenderStyle *style)
-{
- // For compatibility, frames render even when display: none is set.
- // However, we delay creating a renderer until stylesheets have loaded.
- return style->isStyleAvailable();
-}
-
-RenderObject *HTMLFrameSetElement::createRenderer(RenderArena *arena, RenderStyle *style)
-{
- if (style->contentData())
- return RenderObject::createObject(this, style);
-
- return new (arena) RenderFrameSet(this);
-}
-
-void HTMLFrameSetElement::attach()
-{
- // Inherit default settings from parent frameset
- // FIXME: This is not dynamic.
- for (Node* node = parentNode(); node; node = node->parentNode()) {
- if (node->hasTagName(framesetTag)) {
- HTMLFrameSetElement* frameset = static_cast<HTMLFrameSetElement*>(node);
- if (!frameBorderSet)
- frameborder = frameset->hasFrameBorder();
- if (frameborder) {
- if (!m_borderSet)
- m_border = frameset->border();
- if (!m_borderColorSet)
- m_borderColorSet = frameset->hasBorderColor();
- }
- if (!noresize)
- noresize = frameset->noResize();
- break;
- }
- }
-
- HTMLElement::attach();
-}
-
-void HTMLFrameSetElement::defaultEventHandler(Event* evt)
-{
- if (evt->isMouseEvent() && !noresize && renderer()) {
- if (static_cast<RenderFrameSet*>(renderer())->userResize(static_cast<MouseEvent*>(evt))) {
- evt->setDefaultHandled();
- return;
- }
- }
- HTMLElement::defaultEventHandler(evt);
-}
-
-void HTMLFrameSetElement::recalcStyle(StyleChange ch)
-{
- if (changed() && renderer()) {
- renderer()->setNeedsLayout(true);
-#ifdef FLATTEN_FRAMESET
- static_cast<RenderFrameSet*>(renderer())->setGridNeedsLayout();
-#endif
- setChanged(NoStyleChange);
- }
- HTMLElement::recalcStyle(ch);
-}
-
-String HTMLFrameSetElement::cols() const
-{
- return getAttribute(colsAttr);
-}
-
-void HTMLFrameSetElement::setCols(const String &value)
-{
- setAttribute(colsAttr, value);
-}
-
-String HTMLFrameSetElement::rows() const
-{
- return getAttribute(rowsAttr);
-}
-
-void HTMLFrameSetElement::setRows(const String &value)
-{
- setAttribute(rowsAttr, value);
-}
-
-}