Code

Deweirdification of user visible messages as proposed by Tav
[inkscape.git] / src / dom / work / traversal.idl
1 /*
2  * Copyright (c) 2000 World Wide Web Consortium,
3  * (Massachusetts Institute of Technology, Institut National de
4  * Recherche en Informatique et en Automatique, Keio University). All
5  * Rights Reserved. This program is distributed under the W3C's Software
6  * Intellectual Property License. This program is distributed in the
7  * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
8  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  * PURPOSE.
10  * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
11  */
13 // File: http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113/traversal.idl
15 #ifndef _TRAVERSAL_IDL_
16 #define _TRAVERSAL_IDL_
18 #include "dom.idl"
20 #pragma prefix "dom.w3c.org"
21 module traversal
22 {
24   typedef dom::Node Node;
26   interface NodeFilter;
28   // Introduced in DOM Level 2:
29   interface NodeIterator {
30     readonly attribute Node             root;
31     readonly attribute unsigned long    whatToShow;
32     readonly attribute NodeFilter       filter;
33     readonly attribute boolean          expandEntityReferences;
34     Node               nextNode()
35                                         raises(dom::DOMException);
36     Node               previousNode()
37                                         raises(dom::DOMException);
38     void               detach();
39   };
41   // Introduced in DOM Level 2:
42   interface NodeFilter {
44     // Constants returned by acceptNode
45     const short               FILTER_ACCEPT                  = 1;
46     const short               FILTER_REJECT                  = 2;
47     const short               FILTER_SKIP                    = 3;
50     // Constants for whatToShow
51     const unsigned long       SHOW_ALL                       = 0xFFFFFFFF;
52     const unsigned long       SHOW_ELEMENT                   = 0x00000001;
53     const unsigned long       SHOW_ATTRIBUTE                 = 0x00000002;
54     const unsigned long       SHOW_TEXT                      = 0x00000004;
55     const unsigned long       SHOW_CDATA_SECTION             = 0x00000008;
56     const unsigned long       SHOW_ENTITY_REFERENCE          = 0x00000010;
57     const unsigned long       SHOW_ENTITY                    = 0x00000020;
58     const unsigned long       SHOW_PROCESSING_INSTRUCTION    = 0x00000040;
59     const unsigned long       SHOW_COMMENT                   = 0x00000080;
60     const unsigned long       SHOW_DOCUMENT                  = 0x00000100;
61     const unsigned long       SHOW_DOCUMENT_TYPE             = 0x00000200;
62     const unsigned long       SHOW_DOCUMENT_FRAGMENT         = 0x00000400;
63     const unsigned long       SHOW_NOTATION                  = 0x00000800;
65     short              acceptNode(in Node n);
66   };
68   // Introduced in DOM Level 2:
69   interface TreeWalker {
70     readonly attribute Node             root;
71     readonly attribute unsigned long    whatToShow;
72     readonly attribute NodeFilter       filter;
73     readonly attribute boolean          expandEntityReferences;
74              attribute Node             currentNode;
75                                         // raises(dom::DOMException) on setting
77     Node               parentNode();
78     Node               firstChild();
79     Node               lastChild();
80     Node               previousSibling();
81     Node               nextSibling();
82     Node               previousNode();
83     Node               nextNode();
84   };
86   // Introduced in DOM Level 2:
87   interface DocumentTraversal {
88     NodeIterator       createNodeIterator(in Node root, 
89                                           in unsigned long whatToShow, 
90                                           in NodeFilter filter, 
91                                           in boolean entityReferenceExpansion)
92                                         raises(dom::DOMException);
93     TreeWalker         createTreeWalker(in Node root, 
94                                         in unsigned long whatToShow, 
95                                         in NodeFilter filter, 
96                                         in boolean entityReferenceExpansion)
97                                         raises(dom::DOMException);
98   };
99 };
101 #endif // _TRAVERSAL_IDL_