diff options
Diffstat (limited to 'dom/interfaces/core/nsIDOMNode.idl')
-rw-r--r-- | dom/interfaces/core/nsIDOMNode.idl | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/dom/interfaces/core/nsIDOMNode.idl b/dom/interfaces/core/nsIDOMNode.idl new file mode 100644 index 000000000..fc390dd7b --- /dev/null +++ b/dom/interfaces/core/nsIDOMNode.idl @@ -0,0 +1,111 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "domstubs.idl" + +interface nsIVariant; + +/** + * The nsIDOMNode interface is the primary datatype for the entire + * Document Object Model. + * It represents a single node in the document tree. + * + * For more information on this interface please see + * http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html + */ + +[uuid(cc35b412-009b-46a3-9be0-76448f12548d)] +interface nsIDOMNode : nsISupports +{ + const unsigned short ELEMENT_NODE = 1; + const unsigned short ATTRIBUTE_NODE = 2; + const unsigned short TEXT_NODE = 3; + const unsigned short CDATA_SECTION_NODE = 4; + const unsigned short ENTITY_REFERENCE_NODE = 5; + const unsigned short ENTITY_NODE = 6; + const unsigned short PROCESSING_INSTRUCTION_NODE = 7; + const unsigned short COMMENT_NODE = 8; + const unsigned short DOCUMENT_NODE = 9; + const unsigned short DOCUMENT_TYPE_NODE = 10; + const unsigned short DOCUMENT_FRAGMENT_NODE = 11; + const unsigned short NOTATION_NODE = 12; + + readonly attribute DOMString nodeName; + attribute DOMString nodeValue; + // raises(DOMException) on setting + // raises(DOMException) on retrieval + readonly attribute unsigned short nodeType; + readonly attribute nsIDOMNode parentNode; + readonly attribute nsIDOMElement parentElement; + readonly attribute nsIDOMNodeList childNodes; + readonly attribute nsIDOMNode firstChild; + readonly attribute nsIDOMNode lastChild; + readonly attribute nsIDOMNode previousSibling; + readonly attribute nsIDOMNode nextSibling; + // Modified in DOM Level 2: + readonly attribute nsIDOMDocument ownerDocument; + nsIDOMNode insertBefore(in nsIDOMNode newChild, + in nsIDOMNode refChild) + raises(DOMException); + nsIDOMNode replaceChild(in nsIDOMNode newChild, + in nsIDOMNode oldChild) + raises(DOMException); + nsIDOMNode removeChild(in nsIDOMNode oldChild) + raises(DOMException); + nsIDOMNode appendChild(in nsIDOMNode newChild) + raises(DOMException); + boolean hasChildNodes(); + // Modified in DOM Level 4: + [optional_argc] nsIDOMNode cloneNode([optional] in boolean deep); + // Modified in DOM Level 2: + void normalize(); + // Introduced in DOM Level 2: + readonly attribute DOMString namespaceURI; + // Modified in DOM Core + readonly attribute DOMString prefix; + + // Introduced in DOM Level 2: + readonly attribute DOMString localName; + + // For vtable compatibility (see bug 1078674) + [noscript] bool unusedPlaceholder(); + + // Introduced in DOM Level 3: + // This uses a binaryname to avoid warnings due to name collision with + // nsINode::GetBaseURI + [binaryname(DOMBaseURI)] readonly attribute DOMString baseURI; + + // DocumentPosition + const unsigned short DOCUMENT_POSITION_DISCONNECTED = 0x01; + const unsigned short DOCUMENT_POSITION_PRECEDING = 0x02; + const unsigned short DOCUMENT_POSITION_FOLLOWING = 0x04; + const unsigned short DOCUMENT_POSITION_CONTAINS = 0x08; + const unsigned short DOCUMENT_POSITION_CONTAINED_BY = 0x10; + const unsigned short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 0x20; + + // Introduced in DOM Level 3: + unsigned short compareDocumentPosition(in nsIDOMNode other) + raises(DOMException); + // Introduced in DOM Level 3: + attribute DOMString textContent; + // raises(DOMException) on setting + // raises(DOMException) on retrieval + + // Introduced in DOM Level 3: + DOMString lookupPrefix(in DOMString namespaceURI); + // Introduced in DOM Level 3: + boolean isDefaultNamespace(in DOMString namespaceURI); + // Introduced in DOM Level 3: + DOMString lookupNamespaceURI(in DOMString prefix); + // Introduced in DOM Level 3: + boolean isEqualNode(in nsIDOMNode arg); + // Introduced in DOM Level 3: + nsIVariant setUserData(in DOMString key, + in nsIVariant data); + // Introduced in DOM Level 3: + nsIVariant getUserData(in DOMString key); + + boolean contains(in nsIDOMNode aOther); +}; |