KHTML
dom_element.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef _DOM_ELEMENT_h_
00030 #define _DOM_ELEMENT_h_
00031
00032 #include <dom/dom_node.h>
00033 #include <dom/css_value.h>
00034
00035 #include <kdelibs_export.h>
00036
00037 namespace DOM {
00038
00039 class DOMString;
00040 class AttrImpl;
00041 class Element;
00042 class ElementImpl;
00043 class NamedAttrMapImpl;
00044 class DocumentImpl;
00045
00089 class KHTML_EXPORT Attr : public Node
00090 {
00091 friend class Element;
00092 friend class Document;
00093 friend class DocumentImpl;
00094 friend class HTMLDocument;
00095 friend class ElementImpl;
00096 friend class NamedAttrMapImpl;
00097 friend class AttrImpl;
00098
00099 public:
00100 Attr();
00101 Attr(const Node &other) : Node()
00102 {(*this)=other;}
00103 Attr(const Attr &other);
00104
00105 Attr & operator = (const Node &other);
00106 Attr & operator = (const Attr &other);
00107
00108 ~Attr();
00109
00114 DOMString name() const;
00115
00147 bool specified() const;
00148
00158 DOMString value() const;
00159
00163 void setValue( const DOMString & );
00164
00171 Element ownerElement() const;
00172
00173 protected:
00174
00175 Attr( AttrImpl *_impl );
00176 };
00177
00178 class NodeList;
00179 class Attr;
00180 class DOMString;
00181
00210 class KHTML_EXPORT Element : public Node
00211 {
00212 friend class Document;
00213 friend class HTMLDocument;
00214
00215 friend class Attr;
00216
00217 public:
00218 Element();
00219 Element(const Node &other) : Node()
00220 {(*this)=other;}
00221 Element(const Element &other);
00222
00223 Element & operator = (const Node &other);
00224 Element & operator = (const Element &other);
00225
00226 ~Element();
00227
00238 DOMString tagName() const;
00239
00250 DOMString getAttribute ( const DOMString &name );
00251
00279 void setAttribute ( const DOMString &name, const DOMString &value );
00280
00293 void removeAttribute ( const DOMString &name );
00294
00305 Attr getAttributeNode ( const DOMString &name );
00306
00332 Attr setAttributeNode ( const Attr &newAttr );
00333
00350 Attr removeAttributeNode ( const Attr &oldAttr );
00351
00364 NodeList getElementsByTagName ( const DOMString &name );
00365
00380 NodeList getElementsByTagNameNS ( const DOMString &namespaceURI,
00381 const DOMString &localName );
00382
00398 DOMString getAttributeNS ( const DOMString &namespaceURI,
00399 const DOMString &localName );
00400
00439 void setAttributeNS ( const DOMString &namespaceURI,
00440 const DOMString &qualifiedName,
00441 const DOMString &value );
00442
00460 void removeAttributeNS ( const DOMString &namespaceURI,
00461 const DOMString &localName );
00462
00476 Attr getAttributeNodeNS ( const DOMString &namespaceURI,
00477 const DOMString &localName );
00478
00504 Attr setAttributeNodeNS ( const Attr &newAttr );
00505
00516 bool hasAttribute( const DOMString& name );
00517
00532 bool hasAttributeNS ( const DOMString &namespaceURI,
00533 const DOMString &localName );
00534
00541 CSSStyleDeclaration style ( );
00542
00555 bool contentEditable() const;
00556
00573 void setContentEditable(bool enabled);
00574
00579 bool isHTMLElement() const;
00580
00587 Element form() const;
00588
00589 static bool khtmlValidAttrName(const DOMString &name);
00590 static bool khtmlValidPrefix(const DOMString &name);
00591 static bool khtmlValidQualifiedName(const DOMString &name);
00592
00593 static bool khtmlMalformedQualifiedName(const DOMString &name);
00594 static bool khtmlMalformedPrefix(const DOMString &name);
00595 protected:
00596 Element(ElementImpl *_impl);
00597 };
00598
00599 }
00600 #endif