summaryrefslogtreecommitdiffstats
path: root/khtml/dom/dom_doc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'khtml/dom/dom_doc.cpp')
-rw-r--r--khtml/dom/dom_doc.cpp684
1 files changed, 0 insertions, 684 deletions
diff --git a/khtml/dom/dom_doc.cpp b/khtml/dom/dom_doc.cpp
deleted file mode 100644
index 0ff123444..000000000
--- a/khtml/dom/dom_doc.cpp
+++ /dev/null
@@ -1,684 +0,0 @@
-/*
- * 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.
- *
- */
-
-#include "dom/dom_exception.h"
-#include "dom/dom_xml.h"
-#include "dom/dom2_range.h"
-#include "dom/dom2_events.h"
-#include "dom/dom2_views.h"
-#include "dom/dom2_traversal.h"
-#include "dom/html_document.h"
-#include "html/html_documentimpl.h"
-
-#include "xml/dom_docimpl.h"
-#include "xml/dom_elementimpl.h"
-
-#include <kdebug.h>
-
-namespace DOM {
-
-DOMImplementation::DOMImplementation()
-{
- impl = 0;
-}
-
-DOMImplementation::DOMImplementation(const DOMImplementation &other)
-{
- impl = other.impl;
- if (impl) impl->ref();
-}
-
-DOMImplementation::DOMImplementation(DOMImplementationImpl *i)
-{
- impl = i;
- if (impl) impl->ref();
-}
-
-DOMImplementation &DOMImplementation::operator = (const DOMImplementation &other)
-{
- if ( impl != other.impl ) {
- if (impl) impl->deref();
- impl = other.impl;
- if (impl) impl->ref();
- }
- return *this;
-}
-
-DOMImplementation::~DOMImplementation()
-{
- if (impl) impl->deref();
-}
-
-bool DOMImplementation::hasFeature( const DOMString &feature, const DOMString &version )
-{
- if (!impl)
- return false; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return impl->hasFeature(feature,version);
-}
-
-DocumentType DOMImplementation::createDocumentType ( const DOMString &qualifiedName,
- const DOMString &publicId,
- const DOMString &systemId )
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- int exceptioncode = 0;
- DocumentTypeImpl *r = impl->createDocumentType(qualifiedName, publicId, systemId, exceptioncode);
- if ( exceptioncode )
- throw DOMException( exceptioncode );
- return r;
-}
-
-Document DOMImplementation::createDocument ( const DOMString &namespaceURI,
- const DOMString &qualifiedName,
- const DocumentType &doctype )
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- int exceptioncode = 0;
- DocumentImpl *r = impl->createDocument(namespaceURI, qualifiedName, doctype, exceptioncode );
- if ( exceptioncode )
- throw DOMException( exceptioncode );
- return r;
-}
-
-HTMLDocument DOMImplementation::createHTMLDocument( const DOMString& title )
-{
- if (!impl) throw DOMException(DOMException::NOT_FOUND_ERR);
-
- HTMLDocumentImpl* r = impl->createHTMLDocument( 0 /* ### create a view otherwise it doesn't work */);
-
- r->open();
-
- r->write(TQString::fromLatin1("<HTML><HEAD><TITLE>") + title.string() +
- TQString::fromLatin1("</TITLE></HEAD>"));
-
- return r;
-}
-
-DOMImplementation DOMImplementation::getInterface(const DOMString &feature) const
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return impl->getInterface(feature);
-}
-
-CSSStyleSheet DOMImplementation::createCSSStyleSheet(const DOMString &title, const DOMString &media)
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- int exceptioncode = 0;
- CSSStyleSheetImpl *r = impl->createCSSStyleSheet(title.implementation(), media.implementation(),
- exceptioncode);
- if ( exceptioncode )
- throw DOMException( exceptioncode );
- return r;
-}
-
-DOMImplementationImpl *DOMImplementation::handle() const
-{
- return impl;
-}
-
-bool DOMImplementation::isNull() const
-{
- return (impl == 0);
-}
-
-// ----------------------------------------------------------------------------
-
-Document::Document()
- : Node()
-{
- // we always want an implementation
- impl = DOMImplementationImpl::instance()->createDocument();
- impl->ref();
-}
-
-Document::Document(bool create)
- : Node()
-{
- if(create)
- {
- impl = DOMImplementationImpl::instance()->createDocument();
- impl->ref();
- }
- else
- impl = 0;
-// kdDebug(6090) << "Document::Document(bool)" << endl;
-}
-
-Document::Document(const Document &other) : Node(other)
-{
-// kdDebug(6090) << "Document::Document(Document &)" << endl;
-}
-
-Document::Document(DocumentImpl *i) : Node(i)
-{
-// kdDebug(6090) << "Document::Document(DocumentImpl)" << endl;
-}
-
-Document &Document::operator = (const Node &other)
-{
- NodeImpl* ohandle = other.handle();
- if ( impl != ohandle ) {
- if (!ohandle || ohandle->nodeType() != DOCUMENT_NODE) {
- if ( impl ) impl->deref();
- impl = 0;
- } else {
- Node::operator =(other);
- }
- }
- return *this;
-}
-
-Document &Document::operator = (const Document &other)
-{
- Node::operator =(other);
- return *this;
-}
-
-Document::~Document()
-{
-// kdDebug(6090) << "Document::~Document\n" << endl;
-}
-
-DocumentType Document::doctype() const
-{
- if (impl) return ((DocumentImpl *)impl)->doctype();
- return 0;
-}
-
-DOMImplementation Document::implementation() const
-{
- if (impl) return ((DocumentImpl *)impl)->implementation();
- return 0;
-}
-
-Element Document::documentElement() const
-{
- if (impl) return ((DocumentImpl *)impl)->documentElement();
- return 0;
-}
-
-Element Document::createElement( const DOMString &tagName )
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- int exceptioncode = 0;
- ElementImpl* r = ((DocumentImpl *)impl)->createElement(tagName, &exceptioncode);
- if ( exceptioncode )
- throw DOMException( exceptioncode );
- return r;
-}
-
-Element Document::createElementNS( const DOMString &namespaceURI, const DOMString &qualifiedName )
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- int exceptioncode = 0;
- ElementImpl* r = ((DocumentImpl *)impl)->createElementNS(namespaceURI,qualifiedName, &exceptioncode);
- if ( exceptioncode )
- throw DOMException( exceptioncode );
- return r;
-}
-
-DocumentFragment Document::createDocumentFragment( )
-{
- if (impl) return ((DocumentImpl *)impl)->createDocumentFragment();
- return 0;
-}
-
-Text Document::createTextNode( const DOMString &data )
-{
- if (impl) return ((DocumentImpl *)impl)->createTextNode( data.implementation() );
- return 0;
-}
-
-Comment Document::createComment( const DOMString &data )
-{
- if (impl) return ((DocumentImpl *)impl)->createComment( data.implementation() );
- return 0;
-}
-
-CDATASection Document::createCDATASection( const DOMString &data )
-{
- // ### DOM1 spec says raise exception if html documents - what about XHTML documents?
- if (impl) return ((DocumentImpl *)impl)->createCDATASection( data.implementation() );
- return 0;
-}
-
-ProcessingInstruction Document::createProcessingInstruction( const DOMString &target, const DOMString &data )
-{
- if (impl) return ((DocumentImpl *)impl)->createProcessingInstruction( target, data.implementation() );
- return 0;
-}
-
-Attr Document::createAttribute( const DOMString &name )
-{
- if (!impl) throw DOMException(DOMException::NOT_FOUND_ERR);
- if (name.isNull()) throw DOMException(DOMException::NOT_FOUND_ERR);
- int exceptioncode = 0;
- AttrImpl* a = impl->getDocument()->createAttribute(name, &exceptioncode);
- if ( exceptioncode )
- throw DOMException( exceptioncode );
- return a;
-}
-
-Attr Document::createAttributeNS( const DOMString &namespaceURI, const DOMString &qualifiedName )
-{
- if (!impl) throw DOMException(DOMException::NOT_FOUND_ERR);
- if (qualifiedName.isNull()) throw DOMException(DOMException::NAMESPACE_ERR);
- int exceptioncode = 0;
- AttrImpl* a = impl->getDocument()->createAttributeNS(namespaceURI, qualifiedName, &exceptioncode);
- if ( exceptioncode )
- throw DOMException( exceptioncode );
- return a;
-}
-
-EntityReference Document::createEntityReference( const DOMString &name )
-{
- if (impl) return ((DocumentImpl *)impl)->createEntityReference( name );
- return 0;
-}
-
-Element Document::getElementById( const DOMString &elementId ) const
-{
- if(impl) return ((DocumentImpl *)impl)->getElementById( elementId );
- return 0;
-}
-
-NodeList Document::getElementsByTagName( const DOMString &tagName )
-{
- if (!impl) return 0;
- NodeImpl::Id id;
- if ( tagName == "*" )
- id = 0;
- else
- id = impl->getDocument()->getId(NodeImpl::ElementId, tagName.implementation(), false, true);
- return new TagNodeListImpl( impl, id );
-}
-
-NodeList Document::getElementsByTagNameNS( const DOMString &namespaceURI, const DOMString &localName )
-{
- if (!impl) return 0;
- return new TagNodeListImpl( impl, namespaceURI, localName );
-}
-
-Node Document::importNode( const Node & importedNode, bool deep )
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- int exceptioncode = 0;
- NodeImpl *r = static_cast<DocumentImpl*>(impl)->importNode(importedNode.handle(), deep, exceptioncode);
- if (exceptioncode)
- throw DOMException(exceptioncode);
- return r;
-}
-
-bool Document::isHTMLDocument() const
-{
- if (impl) return ((DocumentImpl *)impl)->isHTMLDocument();
- return 0;
-}
-
-Range Document::createRange()
-{
- if (impl) return ((DocumentImpl *)impl)->createRange();
- return 0;
-}
-
-NodeIterator Document::createNodeIterator(Node root, unsigned long whatToShow,
- NodeFilter filter, bool entityReferenceExpansion)
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- int exceptioncode = 0;
- NodeIteratorImpl *r = static_cast<DocumentImpl*>(impl)->createNodeIterator(root.handle(),
- whatToShow,filter,entityReferenceExpansion,exceptioncode);
- if (exceptioncode)
- throw DOMException(exceptioncode);
- return r;
-}
-
-TreeWalker Document::createTreeWalker(Node root, unsigned long whatToShow, NodeFilter filter,
- bool entityReferenceExpansion)
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- int exceptioncode = 0;
-
- TreeWalkerImpl *tw = static_cast<DocumentImpl *>(impl)->createTreeWalker(
- root.handle(), whatToShow, filter.handle(), entityReferenceExpansion, exceptioncode);
- if (exceptioncode)
- throw DOMException(exceptioncode);
-
- return tw;
-}
-
-Event Document::createEvent(const DOMString &eventType)
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- int exceptioncode = 0;
- EventImpl *r = ((DocumentImpl *)impl)->createEvent(eventType,exceptioncode);
- if (exceptioncode)
- throw DOMException(exceptioncode);
- return r;
-}
-
-AbstractView Document::defaultView() const
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- return static_cast<DocumentImpl*>(impl)->defaultView();
-}
-
-StyleSheetList Document::styleSheets() const
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- return static_cast<DocumentImpl*>(impl)->styleSheets();
-}
-
-DOMString Document::preferredStylesheetSet()
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- return static_cast<DocumentImpl*>(impl)->preferredStylesheetSet();
-}
-
-DOMString Document::selectedStylesheetSet()
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- return static_cast<DocumentImpl*>(impl)->selectedStylesheetSet();
-}
-
-void Document::setSelectedStylesheetSet(const DOMString& s)
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- static_cast<DocumentImpl*>(impl)->setSelectedStylesheetSet(s);
-}
-
-
-KHTMLView *Document::view() const
-{
- if (!impl) return 0;
-
- return static_cast<DocumentImpl*>(impl)->view();
-}
-
-CSSStyleDeclaration Document::getOverrideStyle(const Element &elt, const DOMString &pseudoElt)
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- int exceptioncode = 0;
- CSSStyleDeclarationImpl *r = ((DocumentImpl *)impl)->getOverrideStyle(static_cast<ElementImpl*>(elt.handle()),pseudoElt.implementation());
- if (exceptioncode)
- throw DOMException(exceptioncode);
- return r;
-}
-
-bool Document::async() const
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- return static_cast<DocumentImpl*>( impl )->async( );
-}
-
-void Document::setAsync( bool b )
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- static_cast<DocumentImpl*>( impl )->setAsync( b );
-}
-
-void Document::abort()
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
-
- static_cast<DocumentImpl*>( impl )->abort( );
-}
-
-void Document::load( const DOMString &uri )
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- static_cast<DocumentImpl*>( impl )->load( uri );
-}
-
-void Document::loadXML( const DOMString &source )
-{
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
-
- static_cast<DocumentImpl*>( impl )->loadXML( source );
-}
-
-bool Document::designMode() const {
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- return static_cast<DocumentImpl*>( impl )->designMode();
-}
-
-void Document::setDesignMode(bool enable) {
- if (!impl)
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- static_cast<DocumentImpl*>( impl )->setDesignMode( enable );
-}
-
-DOMString Document::completeURL(const DOMString& url)
-{
- if ( !impl ) return url;
- return static_cast<DocumentImpl*>( impl )->completeURL( url.string() );
-}
-
-DOMString Document::toString() const
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return static_cast<DocumentImpl*>(impl)->toString();
-}
-
-void Document::updateRendering()
-{
- if ( !impl ) return;
- static_cast<DocumentImpl*>( impl )->updateRendering( );
-}
-
-void Document::addStyleSheet(const StyleSheet &sheet)
-{
- if (!impl || sheet.isNull())
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- int exceptioncode;
- static_cast<DocumentImpl*>( impl )->addStyleSheet( sheet.handle(), &exceptioncode );
- if (exceptioncode)
- throw DOMException(exceptioncode);
-}
-
-void Document::removeStyleSheet(const StyleSheet &sheet)
-{
- if (!impl || sheet.isNull())
- throw DOMException(DOMException::INVALID_STATE_ERR);
-
- int exceptioncode;
- static_cast<DocumentImpl*>( impl )->removeStyleSheet( sheet.handle(), &exceptioncode );
- if (exceptioncode)
- throw DOMException(exceptioncode);
-}
-
-// ----------------------------------------------------------------------------
-
-DocumentFragment::DocumentFragment() : Node()
-{
-}
-
-DocumentFragment::DocumentFragment(const DocumentFragment &other) : Node(other)
-{
-}
-
-DocumentFragment &DocumentFragment::operator = (const Node &other)
-{
- NodeImpl* ohandle = other.handle();
- if ( impl != ohandle ) {
- if (!ohandle || ohandle->nodeType() != DOCUMENT_FRAGMENT_NODE) {
- if ( impl ) impl->deref();
- impl = 0;
- } else {
- Node::operator =(other);
- }
- }
- return *this;
-}
-
-DocumentFragment &DocumentFragment::operator = (const DocumentFragment &other)
-{
- Node::operator =(other);
- return *this;
-}
-
-DocumentFragment::~DocumentFragment()
-{
-}
-
-DocumentFragment::DocumentFragment(DocumentFragmentImpl *i) : Node(i)
-{
-}
-
-// ----------------------------------------------------------------------------
-
-DocumentType::DocumentType()
- : Node()
-{
-}
-
-DocumentType::DocumentType(const DocumentType &other)
- : Node(other)
-{
-}
-
-DocumentType::DocumentType(DocumentTypeImpl *impl) : Node(impl)
-{
-}
-
-DocumentType &DocumentType::operator = (const Node &other)
-{
- NodeImpl* ohandle = other.handle();
- if ( impl != ohandle ) {
- if (!ohandle || ohandle->nodeType() != DOCUMENT_TYPE_NODE) {
- if ( impl ) impl->deref();
- impl = 0;
- } else {
- Node::operator =(other);
- }
- }
- return *this;
-}
-
-DocumentType &DocumentType::operator = (const DocumentType &other)
-{
- Node::operator =(other);
- return *this;
-}
-
-DocumentType::~DocumentType()
-{
-}
-
-DOMString DocumentType::name() const
-{
- if (!impl)
- return DOMString(); // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return static_cast<DocumentTypeImpl*>(impl)->name();
-}
-
-NamedNodeMap DocumentType::entities() const
-{
- if (!impl)
- return 0; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return static_cast<DocumentTypeImpl*>(impl)->entities();
-}
-
-NamedNodeMap DocumentType::notations() const
-{
- if (!impl)
- return 0; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return static_cast<DocumentTypeImpl*>(impl)->notations();
-}
-
-DOMString DocumentType::publicId() const
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return static_cast<DocumentTypeImpl*>(impl)->publicId();
-}
-
-DOMString DocumentType::systemId() const
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return static_cast<DocumentTypeImpl*>(impl)->systemId();
-}
-
-DOMString DocumentType::internalSubset() const
-{
- if (!impl)
- throw DOMException(DOMException::NOT_FOUND_ERR);
-
- return static_cast<DocumentTypeImpl*>(impl)->internalSubset();
-}
-
-} // namespace