1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
3 * ***** BEGIN LICENSE BLOCK *****
4 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
6 * The contents of this file are subject to the Mozilla Public License Version
7 * 1.1 (the "License"); you may not use this file except in compliance with
8 * the License. You may obtain a copy of the License at
9 * http://www.mozilla.org/MPL/
11 * Software distributed under the License is distributed on an "AS IS" basis,
12 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
13 * for the specific language governing rights and limitations under the
16 * The Original Code is the Mozilla browser.
18 * The Initial Developer of the Original Code is
19 * Netscape Communications Corporation.
20 * Portions created by the Initial Developer are Copyright (C) 1999
21 * the Initial Developer. All Rights Reserved.
25 * Alexander Surkov <surkov.alexander@gmail.com>
27 * Alternatively, the contents of this file may be used under the terms of
28 * either of the GNU General Public License Version 2 or later (the "GPL"),
29 * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
30 * in which case the provisions of the GPL or the LGPL are applicable instead
31 * of those above. If you wish to allow use of your version of this file only
32 * under the terms of either the GPL or the LGPL, and not to allow others to
33 * use your version of this file under the terms of the MPL, indicate your
34 * decision by deleting the provisions above and replace them with the notice
35 * and other provisions required by the GPL or the LGPL. If you do not delete
36 * the provisions above, a recipient may use your version of this file under
37 * the terms of any one of the MPL, the GPL or the LGPL.
39 * ***** END LICENSE BLOCK ***** */
41 #include
"nsISupports.idl"
44 * nsIAccessibleProvider interface is used to link element and accessible
45 object. For that XBL binding of element should implement the interface.
48 [scriptable
, uuid(3f7f9194
-c625
-4a85
-8148-6d92d34897fa
)]
49 interface nsIAccessibleProvider
: nsISupports
52 * Constants set of common use.
55 /** Do not create an accessible for this object
56 * This is useful if an ancestor binding already implements nsIAccessibleProvider,
57 * but no accessible is desired for the inheriting binding
59 const long NoAccessible
= 0;
61 /** For elements that spawn a new document. For example now it is used by
62 <xul:iframe>, <xul:browser> and <xul:editor>. */
63 const long OuterDoc
= 0x00000001;
66 * Constants set is used by XUL controls.
69 const long XULAlert
= 0x00001001;
70 const long XULButton
= 0x00001002;
71 const long XULCheckbox
= 0x00001003;
72 const long XULColorPicker
= 0x00001004;
73 const long XULColorPickerTile
= 0x00001005;
74 const long XULCombobox
= 0x00001006;
75 const long XULDropmarker
= 0x00001007;
76 const long XULGroupbox
= 0x00001008;
77 const long XULImage
= 0x00001009;
78 const long XULLink
= 0x0000100A;
79 const long XULListbox
= 0x0000100B;
80 const long XULListCell
= 0x00001026;
81 const long XULListHead
= 0x00001024;
82 const long XULListHeader
= 0x00001025;
83 const long XULListitem
= 0x0000100C;
84 const long XULMenubar
= 0x0000100D;
85 const long XULMenuitem
= 0x0000100E;
86 const long XULMenupopup
= 0x0000100F;
87 const long XULMenuSeparator
= 0x00001010;
88 const long XULPane
= 0x00001011;
89 const long XULProgressMeter
= 0x00001012;
90 const long XULScale
= 0x00001013;
91 const long XULStatusBar
= 0x00001014;
92 const long XULRadioButton
= 0x00001015;
93 const long XULRadioGroup
= 0x00001016;
95 /** The single tab in a dialog or tabbrowser/editor interface */
96 const long XULTab
= 0x00001017;
98 /** A combination of a tabs object and a tabpanels object */
99 const long XULTabBox
= 0x00001018;
101 /** The collection of tab objects, useable in the TabBox and independant of
103 const long XULTabs
= 0x00001019;
105 const long XULText
= 0x0000101A;
106 const long XULTextBox
= 0x0000101B;
107 const long XULThumb
= 0x0000101C;
108 const long XULTree
= 0x0000101D;
109 const long XULTreeColumns
= 0x0000101E;
110 const long XULTreeColumnItem
= 0x0000101F;
111 const long XULToolbar
= 0x00001020;
112 const long XULToolbarSeparator
= 0x00001021;
113 const long XULTooltip
= 0x00001022;
114 const long XULToolbarButton
= 0x00001023;
118 * Constants set is used by XForms elements.
121 /** Used for xforms elements that provide accessible object for itself as
122 * well for anonymous content. This property are used for upload,
123 * input[type="xsd:gDay"] and input[type="xsd:gMonth"] */
124 const long XFormsContainer
= 0x00002000;
126 /** Used for label element */
127 const long XFormsLabel
= 0x00002001;
128 /** Used for output element */
129 const long XFormsOuput
= 0x00002002;
130 /** Used for trigger and submit elements */
131 const long XFormsTrigger
= 0x00002003;
132 /** Used for input and textarea elements */
133 const long XFormsInput
= 0x00002004;
134 /** Used for input[xsd:boolean] element */
135 const long XFormsInputBoolean
= 0x00002005;
136 /** Used for input[xsd:date] element */
137 const long XFormsInputDate
= 0x00002006;
138 /** Used for secret element */
139 const long XFormsSecret
= 0x00002007;
140 /** Used for range element represented by slider */
141 const long XFormsSliderRange
= 0x00002008;
143 /** Used for select and select1 that are implemented using host document's
144 * native widget. For example, a select1 in a xhtml document may be
145 * represented by the native html control html:select */
146 const long XFormsSelect
= 0x00002009;
147 /** Used for xforms choices element */
148 const long XFormsChoices
= 0x00002010;
149 /** Used for xforms full select/select1 elements that may be represented by
150 * group of checkboxes and radiogroup */
151 const long XFormsSelectFull
= 0x00002011;
152 /** Used for xforms item element that is used inside xforms select elements
153 * represented by group of checkboxes */
154 const long XFormsItemCheckgroup
= 0x00002012;
155 /** Used for xforms item element that is used inside xforms select1 elements
156 * represented by radio group */
157 const long XFormsItemRadiogroup
= 0x00002013;
158 /** Used for xforms select1 element that is represented by combobox */
159 const long XFormsSelectCombobox
= 0x00002014;
160 /** Used for xforms item element that is used inside xforms select1
161 * elements represented by combobox */
162 const long XFormsItemCombobox
= 0x00002015;
164 /** Used for dropmarker widget that is used by xforms elements */
165 const long XFormsDropmarkerWidget
= 0x00002101;
166 /** Used for calendar widget that is used by xforms elements */
167 const long XFormsCalendarWidget
= 0x00002102;
168 /** Used for popup widget that is used by xforms minimal select1 elements */
169 const long XFormsComboboxPopupWidget
= 0x00002103;
172 * Return one of constants declared above.
174 readonly attribute
long accessibleType
;