summaryrefslogtreecommitdiffstats
path: root/tdehtml/dom/html_element.h
diff options
context:
space:
mode:
Diffstat (limited to 'tdehtml/dom/html_element.h')
-rw-r--r--tdehtml/dom/html_element.h221
1 files changed, 221 insertions, 0 deletions
diff --git a/tdehtml/dom/html_element.h b/tdehtml/dom/html_element.h
new file mode 100644
index 000000000..1329793b2
--- /dev/null
+++ b/tdehtml/dom/html_element.h
@@ -0,0 +1,221 @@
+/*
+ * This file is part of the DOM implementation for KDE.
+ *
+ * (C) 1999 Lars Knoll (knoll@kde.org)
+ *
+ * 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.
+ *
+ * This file includes excerpts from the Document Object Model (DOM)
+ * Level 1 Specification (Recommendation)
+ * http://www.w3.org/TR/REC-DOM-Level-1/
+ * Copyright © World Wide Web Consortium , (Massachusetts Institute of
+ * Technology , Institut National de Recherche en Informatique et en
+ * Automatique , Keio University ). All Rights Reserved.
+ *
+ */
+#ifndef HTML_ELEMENT_H
+#define HTML_ELEMENT_H
+
+#include <dom/dom_element.h>
+#include <tdelibs_export.h>
+
+class KHTMLView;
+
+namespace DOM {
+
+class HTMLElementImpl;
+class DOMString;
+class Element;
+class HTMLCollection;
+
+/**
+ * All HTML element interfaces derive from this class. Elements that
+ * only expose the HTML core attributes are represented by the base
+ * \c HTMLElement interface. These elements are as
+ * follows:
+ *
+ * \li \c HEAD
+ *
+ * \li special: <tt> SUB, SUP, SPAN, BDO </tt>
+ *
+ * \li font: <tt> TT, I, B, U, S, STRIKE, BIG, SMALL </tt>
+ *
+ * \li phrase: <tt> EM, STRONG, DFN, CODE, SAMP, KBD, VAR,
+ * CITE, ACRONYM, ABBR</tt>
+ *
+ * \li list: <tt> DD, DT </tt>
+ *
+ * \li <tt> NOFRAMES, NOSCRIPT </tt>
+ *
+ * \li <tt> ADDRESS, CENTER </tt>
+ *
+ * Note: The \c style attribute for this
+ * interface is reserved for future usage.
+ *
+ */
+class KHTML_EXPORT HTMLElement : public Element
+{
+ friend class HTMLDocument;
+ friend class ::KHTMLView;
+ friend class HTMLTableElement;
+ friend class HTMLTableRowElement;
+ friend class HTMLTableSectionElement;
+
+public:
+ HTMLElement();
+ HTMLElement(const HTMLElement &other);
+ HTMLElement(const Node &other) : Element()
+ {(*this)=other;}
+
+protected:
+ HTMLElement(HTMLElementImpl *impl);
+public:
+
+ HTMLElement & operator = (const HTMLElement &other);
+ HTMLElement & operator = (const Node &other);
+
+ ~HTMLElement();
+
+ /**
+ * The element's identifier. See the <a
+ * href="http://www.w3.org/TR/REC-html40/struct/global.html#adef-id">
+ * id attribute definition </a> in HTML 4.0.
+ *
+ */
+ DOMString id() const;
+
+ /**
+ * see id
+ */
+ void setId( const DOMString & );
+
+ /**
+ * The element's advisory title. See the <a
+ * href="http://www.w3.org/TR/REC-html40/struct/global.html#adef-title">
+ * title attribute definition </a> in HTML 4.0.
+ *
+ */
+ DOMString title() const;
+
+ /**
+ * see title
+ */
+ void setTitle( const DOMString & );
+
+ /**
+ * Language code defined in RFC 1766. See the <a
+ * href="http://www.w3.org/TR/REC-html40/struct/dirlang.html#adef-lang">
+ * lang attribute definition </a> in HTML 4.0.
+ *
+ */
+ DOMString lang() const;
+
+ /**
+ * see lang
+ */
+ void setLang( const DOMString & );
+
+ /**
+ * Specifies the base direction of directionally neutral text and
+ * the directionality of tables. See the <a
+ * href="http://www.w3.org/TR/REC-html40/struct/dirlang.html#adef-dir">
+ * dir attribute definition </a> in HTML 4.0.
+ *
+ */
+ DOMString dir() const;
+
+ /**
+ * see dir
+ */
+ void setDir( const DOMString & );
+
+ /**
+ * The class attribute of the element. This attribute has been
+ * renamed due to conflicts with the "class" keyword exposed by
+ * many languages. See the <a
+ * href="http://www.w3.org/TR/REC-html40/struct/global.html#adef-class">
+ * class attribute definition </a> in HTML 4.0.
+ *
+ */
+ DOMString className() const;
+
+ /**
+ * see className
+ */
+ void setClassName( const DOMString & );
+
+ /**
+ * The HTML code contained in this element.
+ * This function is not part of the DOM specifications as defined by the w3c.
+ */
+ DOMString innerHTML() const;
+
+ /**
+ * Set the HTML content of this node.
+ *
+ * @exception DOMException
+ * NO_MODIFICATION_ALLOWED_ERR: Raised if there is the element does not allow
+ * children.
+ */
+ void setInnerHTML( const DOMString &html );
+
+ /**
+ * The text contained in this element.
+ * This function is not part of the DOM specifications as defined by the w3c.
+ */
+ DOMString innerText() const;
+
+ /**
+ * Set the text content of this node.
+ *
+ * @exception DOMException
+ * NO_MODIFICATION_ALLOWED_ERR: Raised if there is the element does not allow
+ * children.
+ */
+ void setInnerText( const DOMString &text );
+
+ /**
+ * Retrieves a collection of nodes that are direct descendants of this node.
+ * IE-specific extension.
+ */
+ HTMLCollection children() const;
+
+ /**
+ * Retrieves a collection of all nodes that descend from this node.
+ * IE-specific extension.
+ */
+ HTMLCollection all() const;
+
+ /*
+ * @internal
+ */
+ void removeCSSProperty( const DOMString& property );
+
+ /*
+ * @internal
+ */
+ void addCSSProperty( const DOMString &property, const DOMString &value );
+
+protected:
+ /*
+ * @internal
+ */
+ void assignOther( const Node &other, int elementId );
+};
+
+} //namespace
+
+#endif