html_document.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 00030 #ifndef HTML_DOCUMENT_H 00031 #define HTML_DOCUMENT_H 00032 00033 #include <dom/dom_doc.h> 00034 #include <dom/dom_string.h> 00035 00036 class KHTMLView; 00037 class KHTMLPart; 00038 00039 namespace DOM { 00040 00041 class HTMLDocumentImpl; 00042 class DOMImplementation; 00043 class HTMLCollection; 00044 class NodeList; 00045 class Element; 00046 class HTMLElement; 00047 00071 class HTMLDocument : public Document 00072 { 00073 friend class ::KHTMLView; 00074 friend class ::KHTMLPart; 00075 friend class DOMImplementation; 00076 public: 00077 HTMLDocument(); 00083 HTMLDocument(KHTMLView *parent); 00084 HTMLDocument(const HTMLDocument &other); 00085 HTMLDocument(const Node &other) : Document(false) 00086 {(*this)=other;} 00087 protected: 00088 HTMLDocument(HTMLDocumentImpl *impl); 00089 public: 00090 00091 HTMLDocument & operator = (const HTMLDocument &other); 00092 HTMLDocument & operator = (const Node &other); 00093 00094 ~HTMLDocument(); 00095 00101 DOMString title() const; 00102 00106 void setTitle( const DOMString & ); 00107 00113 DOMString referrer() const; 00114 00121 DOMString domain() const; 00122 00126 DOMString URL() const; 00127 00135 HTMLElement body() const; 00136 00140 void setBody(const HTMLElement &); 00141 00148 HTMLCollection images() const; 00149 00156 HTMLCollection applets() const; 00157 00164 HTMLCollection links() const; 00165 00170 HTMLCollection forms() const; 00171 00176 HTMLCollection layers() const; 00177 00187 HTMLCollection anchors() const; 00188 00197 DOMString cookie() const; 00198 00202 void setCookie( const DOMString & ); 00203 00219 void open ( ); 00220 00228 void close ( ); 00229 00241 void write ( const DOMString &text ); 00242 00254 void writeln ( const DOMString &text ); 00255 00266 NodeList getElementsByName ( const DOMString &elementName ); 00267 00275 DOMString completeURL( const DOMString& url) const; 00276 00282 DOMString lastModified() const; 00283 00291 HTMLCollection all() const; 00292 }; 00293 00294 } //namespace 00295 00296 #endif