| # khtml Library API Documentation
Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# dom_doc.h

    00001 /*
    00002  * This file is part of the DOM implementation for KDE.
    00003  *
    00004  * (C) 1999 Lars Knoll (knoll@kde.org)
    00005  *
    00006  * This library is free software; you can redistribute it and/or
    00007  * modify it under the terms of the GNU Library General Public
    00008  * License as published by the Free Software Foundation; either
    00009  * version 2 of the License, or (at your option) any later version.
    00010  *
    00011  * This library is distributed in the hope that it will be useful,
    00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00014  * Library General Public License for more details.
    00015  *
    00016  * You should have received a copy of the GNU Library General Public License
    00017  * along with this library; see the file COPYING.LIB.  If not, write to
    00018  * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    00019  * Boston, MA 02111-1307, USA.
    00020  *
    00021  * This file includes excerpts from the Document Object Model (DOM)
    00022  * Level 1 Specification (Recommendation)
    00023  * http://www.w3.org/TR/REC-DOM-Level-1/
    00024  * Copyright © World Wide Web Consortium , (Massachusetts Institute of
    00025  * Technology , Institut National de Recherche en Informatique et en
    00026  * Automatique , Keio University ). All Rights Reserved.
    00027  */
    00028
    00029 #ifndef _DOM_Document_h_
    00030 #define _DOM_Document_h_
    00031
    00032 #include <dom/dom_node.h>
    00033 #include <dom/css_stylesheet.h>
    00034
    00035 class KHTMLView;
    00036 class KHTMLPart;
    00037
    00038 namespace DOM {
    00039
    00040 class DOMString;
    00041 class DocumentType;
    00042 class NodeList;
    00043 class CDATASection;
    00044 class Comment;
    00045 class DocumentFragment;
    00046 class Text;
    00047 class DOMImplementation;
    00048 class Element;
    00049 class Attr;
    00050 class EntityReference;
    00051 class ProcessingInstruction;
    00052 class DocumentImpl;
    00053 class Range;
    00054 class NodeIterator;
    00055 class TreeWalker;
    00056 class NodeFilter;
    00057 class DOMImplementationImpl;
    00058 class DocumentTypeImpl;
    00059 class Event;
    00060 class AbstractView;
    00061 class CSSStyleDeclaration;
    00062 class HTMLElementImpl;
    00063 class HTMLFrameElement;
    00064 class HTMLElementImpl;
    00065 class HTMLIFrameElement;
    00066 class HTMLObjectElement;
    00067 class HTMLDocument;
    00068
    00077 class KHTML_EXPORT DOMImplementation
    00078 {
    00079    friend class Document;
    00080 public:
    00081     DOMImplementation();
    00082     DOMImplementation(const DOMImplementation &other);
    00083
    00084     DOMImplementation & operator = (const DOMImplementation &other);
    00085     ~DOMImplementation();
    00086
    00103     bool hasFeature ( const DOMString &feature, const DOMString &version );
    00104
    00130     DocumentType createDocumentType ( const DOMString &qualifiedName,
    00131                                       const DOMString &publicId,
    00132                                       const DOMString &systemId );
    00133
    00164     Document createDocument ( const DOMString &namespaceURI,
    00165                               const DOMString &qualifiedName,
    00166                               const DocumentType &doctype );
    00167
    00182     DOMImplementation getInterface(const DOMString &feature) const;
    00183
    00200     CSSStyleSheet createCSSStyleSheet(const DOMString &title, const DOMString &media);
    00201
    00217     HTMLDocument createHTMLDocument(const DOMString& title);
    00218
    00223     DOMImplementationImpl *handle() const;
    00224     bool isNull() const;
    00225
    00226 protected:
    00227     DOMImplementation(DOMImplementationImpl *i);
    00228     DOMImplementationImpl *impl;
    00229 };
    00230
    00245 class KHTML_EXPORT Document : public Node
    00246 {
    00247     friend class ::KHTMLView;
    00248     friend class ::KHTMLPart;
    00249     friend class AbstractView;
    00250     friend class DOMImplementation;
    00251     friend class HTMLFrameElement;
    00252     friend class HTMLIFrameElement;
    00253     friend class HTMLObjectElement;
    00254
    00255 public:
    00256     Document();
    00261     Document(bool);
    00262     Document(const Document &other);
    00263     Document(const Node &other) : Node()
    00264          {(*this)=other;}
    00265
    00266     Document & operator = (const Node &other);
    00267     Document & operator = (const Document &other);
    00268
    00269     ~Document();
    00270
    00280     DocumentType doctype() const;
    00281
    00288     DOMImplementation implementation() const;
    00289
    00296     Element documentElement() const;
    00297
    00316     Element createElement ( const DOMString &tagName );
    00317
    00336     Element createElementNS( const DOMString &namespaceURI,
    00337                              const DOMString &qualifiedName );
    00338
    00345     DocumentFragment createDocumentFragment (  );
    00346
    00355     Text createTextNode ( const DOMString &data );
    00356
    00366     Comment createComment ( const DOMString &data );
    00367
    00381     CDATASection createCDATASection ( const DOMString &data );
    00382
    00401     ProcessingInstruction createProcessingInstruction ( const DOMString &target,
    00402                                                         const DOMString &data );
    00403
    00418     Attr createAttribute ( const DOMString &name );
    00419
    00448     Attr createAttributeNS( const DOMString &namespaceURI,
    00449                             const DOMString &qualifiedName );
    00450
    00466     EntityReference createEntityReference ( const DOMString &name );
    00467
    00481     Element getElementById ( const DOMString &elementId ) const;
    00482
    00498     NodeList getElementsByTagName ( const DOMString &tagname );
    00499
    00516     NodeList getElementsByTagNameNS( const DOMString &namespaceURI,
    00517                                      const DOMString &localName );
    00518
    00612     Node importNode( const Node & importedNode, bool deep );
    00613
    00618     bool isHTMLDocument() const;
    00619
    00631     Range createRange();
    00632
    00660     NodeIterator createNodeIterator(Node root, unsigned long whatToShow,
    00661                                     NodeFilter filter,
    00662                                     bool entityReferenceExpansion);
    00663
    00694     TreeWalker createTreeWalker(Node root, unsigned long whatToShow,
    00695                                 NodeFilter filter,
    00696                                 bool entityReferenceExpansion);
    00697
    00725     Event createEvent(const DOMString &eventType);
    00726
    00733     AbstractView defaultView() const;
    00734
    00745     StyleSheetList styleSheets() const;
    00746
    00752     DOMString preferredStylesheetSet();
    00753     DOMString selectedStylesheetSet();
    00754     void setSelectedStylesheetSet(const DOMString& aString);
    00755
    00771     void addStyleSheet(const StyleSheet &sheet);
    00772
    00786     void removeStyleSheet(const StyleSheet &sheet);
    00787
    00791     KHTMLView *view() const;
    00792
    00807     CSSStyleDeclaration getOverrideStyle(const Element &elt,
    00808                                          const DOMString &pseudoElt);
    00809
    00819     bool async() const;
    00820
    00831     void setAsync( bool );
    00832
    00833
    00843     void abort();
    00844
    00881     void load( const DOMString &uri );
    00882
    00902     void loadXML( const DOMString &source );
    00903
    00913     bool designMode() const;
    00914
    00922     void setDesignMode(bool enable);
    00923
    00929     DOMString completeURL(const DOMString& url);
    00930
    00931     DOMString toString() const;
    00932
    00939     void updateRendering();
    00940
    00941     Document( DocumentImpl *i);
    00942 protected:
    00943
    00944     friend class Node;
    00945 };
    00946
    00947 class DocumentFragmentImpl;
    00948
    00991 class KHTML_EXPORT DocumentFragment : public Node
    00992 {
    00993     friend class Document;
    00994     friend class HTMLElementImpl;
    00995     friend class Range;
    00996
    00997 public:
    00998     DocumentFragment();
    00999     DocumentFragment(const DocumentFragment &other);
    01000     DocumentFragment(const Node &other) : Node()
    01001          {(*this)=other;}
    01002
    01003     DocumentFragment & operator = (const Node &other);
    01004     DocumentFragment & operator = (const DocumentFragment &other);
    01005
    01006     ~DocumentFragment();
    01007
    01008 protected:
    01009     DocumentFragment(DocumentFragmentImpl *i);
    01010 };
    01011
    01012 class NamedNodeMap;
    01013 class DOMString;
    01014
    01028 class KHTML_EXPORT DocumentType : public Node
    01029 {
    01030     friend class Document;
    01031     friend class DOMImplementation;
    01032 public:
    01033     DocumentType();
    01034     DocumentType(const DocumentType &other);
    01035
    01036     DocumentType(const Node &other) : Node()
    01037          {(*this)=other;}
    01038     DocumentType & operator = (const Node &other);
    01039     DocumentType & operator = (const DocumentType &other);
    01040
    01041     ~DocumentType();
    01042
    01048     DOMString name() const;
    01049
    01064     NamedNodeMap entities() const;
    01065
    01075     NamedNodeMap notations() const;
    01076
    01082     DOMString publicId() const;
    01083
    01089     DOMString systemId() const;
    01090
    01100     DOMString internalSubset() const;
    01101
    01102 protected:
    01103     DocumentType(DocumentTypeImpl *impl);
    01104 };
    01105
    01106 } //namespace
    01107 #endif

This file is part of the documentation for khtml Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:33:10 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003