1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/accessible/public/nsIAccessiblePivot.idl
3 : */
4 :
5 : #ifndef __gen_nsIAccessiblePivot_h__
6 : #define __gen_nsIAccessiblePivot_h__
7 :
8 :
9 : #ifndef __gen_nsISupports_h__
10 : #include "nsISupports.h"
11 : #endif
12 :
13 : /* For IDL files that don't want to include root IDL files. */
14 : #ifndef NS_NO_VTABLE
15 : #define NS_NO_VTABLE
16 : #endif
17 : typedef PRInt16 TextBoundaryType;
18 :
19 : class nsIAccessible; /* forward declaration */
20 :
21 : class nsIAccessibleText; /* forward declaration */
22 :
23 : class nsIAccessibleTraversalRule; /* forward declaration */
24 :
25 : class nsIAccessiblePivotObserver; /* forward declaration */
26 :
27 :
28 : /* starting interface: nsIAccessiblePivot */
29 : #define NS_IACCESSIBLEPIVOT_IID_STR "689058ae-e301-444f-acb0-b5c2b189f350"
30 :
31 : #define NS_IACCESSIBLEPIVOT_IID \
32 : {0x689058ae, 0xe301, 0x444f, \
33 : { 0xac, 0xb0, 0xb5, 0xc2, 0xb1, 0x89, 0xf3, 0x50 }}
34 :
35 0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIAccessiblePivot : public nsISupports {
36 : public:
37 :
38 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IACCESSIBLEPIVOT_IID)
39 :
40 : enum {
41 : CHAR_BOUNDARY = 0,
42 : WORD_BOUNDARY = 1,
43 : LINE_BOUNDARY = 2,
44 : ATTRIBUTE_RANGE_BOUNDARY = 3
45 : };
46 :
47 : /* attribute nsIAccessible position; */
48 : NS_SCRIPTABLE NS_IMETHOD GetPosition(nsIAccessible * *aPosition) = 0;
49 : NS_SCRIPTABLE NS_IMETHOD SetPosition(nsIAccessible *aPosition) = 0;
50 :
51 : /* readonly attribute nsIAccessible root; */
52 : NS_SCRIPTABLE NS_IMETHOD GetRoot(nsIAccessible * *aRoot) = 0;
53 :
54 : /* readonly attribute long startOffset; */
55 : NS_SCRIPTABLE NS_IMETHOD GetStartOffset(PRInt32 *aStartOffset) = 0;
56 :
57 : /* readonly attribute long endOffset; */
58 : NS_SCRIPTABLE NS_IMETHOD GetEndOffset(PRInt32 *aEndOffset) = 0;
59 :
60 : /* void setTextRange (in nsIAccessibleText aTextAccessible, in long aStartOffset, in long aEndOffset); */
61 : NS_SCRIPTABLE NS_IMETHOD SetTextRange(nsIAccessibleText *aTextAccessible, PRInt32 aStartOffset, PRInt32 aEndOffset) = 0;
62 :
63 : /* boolean moveNext (in nsIAccessibleTraversalRule aRule); */
64 : NS_SCRIPTABLE NS_IMETHOD MoveNext(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) = 0;
65 :
66 : /* boolean movePrevious (in nsIAccessibleTraversalRule aRule); */
67 : NS_SCRIPTABLE NS_IMETHOD MovePrevious(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) = 0;
68 :
69 : /* boolean moveFirst (in nsIAccessibleTraversalRule aRule); */
70 : NS_SCRIPTABLE NS_IMETHOD MoveFirst(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) = 0;
71 :
72 : /* boolean moveLast (in nsIAccessibleTraversalRule aRule); */
73 : NS_SCRIPTABLE NS_IMETHOD MoveLast(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) = 0;
74 :
75 : /* boolean moveNextByText (in TextBoundaryType aBoundary); */
76 : NS_SCRIPTABLE NS_IMETHOD MoveNextByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM) = 0;
77 :
78 : /* boolean movePreviousByText (in TextBoundaryType aBoundary); */
79 : NS_SCRIPTABLE NS_IMETHOD MovePreviousByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM) = 0;
80 :
81 : /* void addObserver (in nsIAccessiblePivotObserver aObserver); */
82 : NS_SCRIPTABLE NS_IMETHOD AddObserver(nsIAccessiblePivotObserver *aObserver) = 0;
83 :
84 : /* void removeObserver (in nsIAccessiblePivotObserver aObserver); */
85 : NS_SCRIPTABLE NS_IMETHOD RemoveObserver(nsIAccessiblePivotObserver *aObserver) = 0;
86 :
87 : };
88 :
89 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIAccessiblePivot, NS_IACCESSIBLEPIVOT_IID)
90 :
91 : /* Use this macro when declaring classes that implement this interface. */
92 : #define NS_DECL_NSIACCESSIBLEPIVOT \
93 : NS_SCRIPTABLE NS_IMETHOD GetPosition(nsIAccessible * *aPosition); \
94 : NS_SCRIPTABLE NS_IMETHOD SetPosition(nsIAccessible *aPosition); \
95 : NS_SCRIPTABLE NS_IMETHOD GetRoot(nsIAccessible * *aRoot); \
96 : NS_SCRIPTABLE NS_IMETHOD GetStartOffset(PRInt32 *aStartOffset); \
97 : NS_SCRIPTABLE NS_IMETHOD GetEndOffset(PRInt32 *aEndOffset); \
98 : NS_SCRIPTABLE NS_IMETHOD SetTextRange(nsIAccessibleText *aTextAccessible, PRInt32 aStartOffset, PRInt32 aEndOffset); \
99 : NS_SCRIPTABLE NS_IMETHOD MoveNext(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM); \
100 : NS_SCRIPTABLE NS_IMETHOD MovePrevious(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM); \
101 : NS_SCRIPTABLE NS_IMETHOD MoveFirst(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM); \
102 : NS_SCRIPTABLE NS_IMETHOD MoveLast(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM); \
103 : NS_SCRIPTABLE NS_IMETHOD MoveNextByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM); \
104 : NS_SCRIPTABLE NS_IMETHOD MovePreviousByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM); \
105 : NS_SCRIPTABLE NS_IMETHOD AddObserver(nsIAccessiblePivotObserver *aObserver); \
106 : NS_SCRIPTABLE NS_IMETHOD RemoveObserver(nsIAccessiblePivotObserver *aObserver);
107 :
108 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
109 : #define NS_FORWARD_NSIACCESSIBLEPIVOT(_to) \
110 : NS_SCRIPTABLE NS_IMETHOD GetPosition(nsIAccessible * *aPosition) { return _to GetPosition(aPosition); } \
111 : NS_SCRIPTABLE NS_IMETHOD SetPosition(nsIAccessible *aPosition) { return _to SetPosition(aPosition); } \
112 : NS_SCRIPTABLE NS_IMETHOD GetRoot(nsIAccessible * *aRoot) { return _to GetRoot(aRoot); } \
113 : NS_SCRIPTABLE NS_IMETHOD GetStartOffset(PRInt32 *aStartOffset) { return _to GetStartOffset(aStartOffset); } \
114 : NS_SCRIPTABLE NS_IMETHOD GetEndOffset(PRInt32 *aEndOffset) { return _to GetEndOffset(aEndOffset); } \
115 : NS_SCRIPTABLE NS_IMETHOD SetTextRange(nsIAccessibleText *aTextAccessible, PRInt32 aStartOffset, PRInt32 aEndOffset) { return _to SetTextRange(aTextAccessible, aStartOffset, aEndOffset); } \
116 : NS_SCRIPTABLE NS_IMETHOD MoveNext(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) { return _to MoveNext(aRule, _retval); } \
117 : NS_SCRIPTABLE NS_IMETHOD MovePrevious(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) { return _to MovePrevious(aRule, _retval); } \
118 : NS_SCRIPTABLE NS_IMETHOD MoveFirst(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) { return _to MoveFirst(aRule, _retval); } \
119 : NS_SCRIPTABLE NS_IMETHOD MoveLast(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) { return _to MoveLast(aRule, _retval); } \
120 : NS_SCRIPTABLE NS_IMETHOD MoveNextByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM) { return _to MoveNextByText(aBoundary, _retval); } \
121 : NS_SCRIPTABLE NS_IMETHOD MovePreviousByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM) { return _to MovePreviousByText(aBoundary, _retval); } \
122 : NS_SCRIPTABLE NS_IMETHOD AddObserver(nsIAccessiblePivotObserver *aObserver) { return _to AddObserver(aObserver); } \
123 : NS_SCRIPTABLE NS_IMETHOD RemoveObserver(nsIAccessiblePivotObserver *aObserver) { return _to RemoveObserver(aObserver); }
124 :
125 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
126 : #define NS_FORWARD_SAFE_NSIACCESSIBLEPIVOT(_to) \
127 : NS_SCRIPTABLE NS_IMETHOD GetPosition(nsIAccessible * *aPosition) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPosition(aPosition); } \
128 : NS_SCRIPTABLE NS_IMETHOD SetPosition(nsIAccessible *aPosition) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetPosition(aPosition); } \
129 : NS_SCRIPTABLE NS_IMETHOD GetRoot(nsIAccessible * *aRoot) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRoot(aRoot); } \
130 : NS_SCRIPTABLE NS_IMETHOD GetStartOffset(PRInt32 *aStartOffset) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStartOffset(aStartOffset); } \
131 : NS_SCRIPTABLE NS_IMETHOD GetEndOffset(PRInt32 *aEndOffset) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetEndOffset(aEndOffset); } \
132 : NS_SCRIPTABLE NS_IMETHOD SetTextRange(nsIAccessibleText *aTextAccessible, PRInt32 aStartOffset, PRInt32 aEndOffset) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTextRange(aTextAccessible, aStartOffset, aEndOffset); } \
133 : NS_SCRIPTABLE NS_IMETHOD MoveNext(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->MoveNext(aRule, _retval); } \
134 : NS_SCRIPTABLE NS_IMETHOD MovePrevious(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->MovePrevious(aRule, _retval); } \
135 : NS_SCRIPTABLE NS_IMETHOD MoveFirst(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->MoveFirst(aRule, _retval); } \
136 : NS_SCRIPTABLE NS_IMETHOD MoveLast(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->MoveLast(aRule, _retval); } \
137 : NS_SCRIPTABLE NS_IMETHOD MoveNextByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->MoveNextByText(aBoundary, _retval); } \
138 : NS_SCRIPTABLE NS_IMETHOD MovePreviousByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->MovePreviousByText(aBoundary, _retval); } \
139 : NS_SCRIPTABLE NS_IMETHOD AddObserver(nsIAccessiblePivotObserver *aObserver) { return !_to ? NS_ERROR_NULL_POINTER : _to->AddObserver(aObserver); } \
140 : NS_SCRIPTABLE NS_IMETHOD RemoveObserver(nsIAccessiblePivotObserver *aObserver) { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveObserver(aObserver); }
141 :
142 : #if 0
143 : /* Use the code below as a template for the implementation class for this interface. */
144 :
145 : /* Header file */
146 : class nsAccessiblePivot : public nsIAccessiblePivot
147 : {
148 : public:
149 : NS_DECL_ISUPPORTS
150 : NS_DECL_NSIACCESSIBLEPIVOT
151 :
152 : nsAccessiblePivot();
153 :
154 : private:
155 : ~nsAccessiblePivot();
156 :
157 : protected:
158 : /* additional members */
159 : };
160 :
161 : /* Implementation file */
162 : NS_IMPL_ISUPPORTS1(nsAccessiblePivot, nsIAccessiblePivot)
163 :
164 : nsAccessiblePivot::nsAccessiblePivot()
165 : {
166 : /* member initializers and constructor code */
167 : }
168 :
169 : nsAccessiblePivot::~nsAccessiblePivot()
170 : {
171 : /* destructor code */
172 : }
173 :
174 : /* attribute nsIAccessible position; */
175 : NS_IMETHODIMP nsAccessiblePivot::GetPosition(nsIAccessible * *aPosition)
176 : {
177 : return NS_ERROR_NOT_IMPLEMENTED;
178 : }
179 : NS_IMETHODIMP nsAccessiblePivot::SetPosition(nsIAccessible *aPosition)
180 : {
181 : return NS_ERROR_NOT_IMPLEMENTED;
182 : }
183 :
184 : /* readonly attribute nsIAccessible root; */
185 : NS_IMETHODIMP nsAccessiblePivot::GetRoot(nsIAccessible * *aRoot)
186 : {
187 : return NS_ERROR_NOT_IMPLEMENTED;
188 : }
189 :
190 : /* readonly attribute long startOffset; */
191 : NS_IMETHODIMP nsAccessiblePivot::GetStartOffset(PRInt32 *aStartOffset)
192 : {
193 : return NS_ERROR_NOT_IMPLEMENTED;
194 : }
195 :
196 : /* readonly attribute long endOffset; */
197 : NS_IMETHODIMP nsAccessiblePivot::GetEndOffset(PRInt32 *aEndOffset)
198 : {
199 : return NS_ERROR_NOT_IMPLEMENTED;
200 : }
201 :
202 : /* void setTextRange (in nsIAccessibleText aTextAccessible, in long aStartOffset, in long aEndOffset); */
203 : NS_IMETHODIMP nsAccessiblePivot::SetTextRange(nsIAccessibleText *aTextAccessible, PRInt32 aStartOffset, PRInt32 aEndOffset)
204 : {
205 : return NS_ERROR_NOT_IMPLEMENTED;
206 : }
207 :
208 : /* boolean moveNext (in nsIAccessibleTraversalRule aRule); */
209 : NS_IMETHODIMP nsAccessiblePivot::MoveNext(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM)
210 : {
211 : return NS_ERROR_NOT_IMPLEMENTED;
212 : }
213 :
214 : /* boolean movePrevious (in nsIAccessibleTraversalRule aRule); */
215 : NS_IMETHODIMP nsAccessiblePivot::MovePrevious(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM)
216 : {
217 : return NS_ERROR_NOT_IMPLEMENTED;
218 : }
219 :
220 : /* boolean moveFirst (in nsIAccessibleTraversalRule aRule); */
221 : NS_IMETHODIMP nsAccessiblePivot::MoveFirst(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM)
222 : {
223 : return NS_ERROR_NOT_IMPLEMENTED;
224 : }
225 :
226 : /* boolean moveLast (in nsIAccessibleTraversalRule aRule); */
227 : NS_IMETHODIMP nsAccessiblePivot::MoveLast(nsIAccessibleTraversalRule *aRule, bool *_retval NS_OUTPARAM)
228 : {
229 : return NS_ERROR_NOT_IMPLEMENTED;
230 : }
231 :
232 : /* boolean moveNextByText (in TextBoundaryType aBoundary); */
233 : NS_IMETHODIMP nsAccessiblePivot::MoveNextByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM)
234 : {
235 : return NS_ERROR_NOT_IMPLEMENTED;
236 : }
237 :
238 : /* boolean movePreviousByText (in TextBoundaryType aBoundary); */
239 : NS_IMETHODIMP nsAccessiblePivot::MovePreviousByText(TextBoundaryType aBoundary, bool *_retval NS_OUTPARAM)
240 : {
241 : return NS_ERROR_NOT_IMPLEMENTED;
242 : }
243 :
244 : /* void addObserver (in nsIAccessiblePivotObserver aObserver); */
245 : NS_IMETHODIMP nsAccessiblePivot::AddObserver(nsIAccessiblePivotObserver *aObserver)
246 : {
247 : return NS_ERROR_NOT_IMPLEMENTED;
248 : }
249 :
250 : /* void removeObserver (in nsIAccessiblePivotObserver aObserver); */
251 : NS_IMETHODIMP nsAccessiblePivot::RemoveObserver(nsIAccessiblePivotObserver *aObserver)
252 : {
253 : return NS_ERROR_NOT_IMPLEMENTED;
254 : }
255 :
256 : /* End of implementation class template. */
257 : #endif
258 :
259 :
260 : /* starting interface: nsIAccessiblePivotObserver */
261 : #define NS_IACCESSIBLEPIVOTOBSERVER_IID_STR "b6508c5e-c081-467d-835c-613eedf9ee9b"
262 :
263 : #define NS_IACCESSIBLEPIVOTOBSERVER_IID \
264 : {0xb6508c5e, 0xc081, 0x467d, \
265 : { 0x83, 0x5c, 0x61, 0x3e, 0xed, 0xf9, 0xee, 0x9b }}
266 :
267 0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIAccessiblePivotObserver : public nsISupports {
268 : public:
269 :
270 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IACCESSIBLEPIVOTOBSERVER_IID)
271 :
272 : /* void onPivotChanged (in nsIAccessiblePivot aPivot, in nsIAccessible aOldAccessible, in long aOldStart, in long aOldEnd); */
273 : NS_SCRIPTABLE NS_IMETHOD OnPivotChanged(nsIAccessiblePivot *aPivot, nsIAccessible *aOldAccessible, PRInt32 aOldStart, PRInt32 aOldEnd) = 0;
274 :
275 : };
276 :
277 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIAccessiblePivotObserver, NS_IACCESSIBLEPIVOTOBSERVER_IID)
278 :
279 : /* Use this macro when declaring classes that implement this interface. */
280 : #define NS_DECL_NSIACCESSIBLEPIVOTOBSERVER \
281 : NS_SCRIPTABLE NS_IMETHOD OnPivotChanged(nsIAccessiblePivot *aPivot, nsIAccessible *aOldAccessible, PRInt32 aOldStart, PRInt32 aOldEnd);
282 :
283 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
284 : #define NS_FORWARD_NSIACCESSIBLEPIVOTOBSERVER(_to) \
285 : NS_SCRIPTABLE NS_IMETHOD OnPivotChanged(nsIAccessiblePivot *aPivot, nsIAccessible *aOldAccessible, PRInt32 aOldStart, PRInt32 aOldEnd) { return _to OnPivotChanged(aPivot, aOldAccessible, aOldStart, aOldEnd); }
286 :
287 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
288 : #define NS_FORWARD_SAFE_NSIACCESSIBLEPIVOTOBSERVER(_to) \
289 : NS_SCRIPTABLE NS_IMETHOD OnPivotChanged(nsIAccessiblePivot *aPivot, nsIAccessible *aOldAccessible, PRInt32 aOldStart, PRInt32 aOldEnd) { return !_to ? NS_ERROR_NULL_POINTER : _to->OnPivotChanged(aPivot, aOldAccessible, aOldStart, aOldEnd); }
290 :
291 : #if 0
292 : /* Use the code below as a template for the implementation class for this interface. */
293 :
294 : /* Header file */
295 : class nsAccessiblePivotObserver : public nsIAccessiblePivotObserver
296 : {
297 : public:
298 : NS_DECL_ISUPPORTS
299 : NS_DECL_NSIACCESSIBLEPIVOTOBSERVER
300 :
301 : nsAccessiblePivotObserver();
302 :
303 : private:
304 : ~nsAccessiblePivotObserver();
305 :
306 : protected:
307 : /* additional members */
308 : };
309 :
310 : /* Implementation file */
311 : NS_IMPL_ISUPPORTS1(nsAccessiblePivotObserver, nsIAccessiblePivotObserver)
312 :
313 : nsAccessiblePivotObserver::nsAccessiblePivotObserver()
314 : {
315 : /* member initializers and constructor code */
316 : }
317 :
318 : nsAccessiblePivotObserver::~nsAccessiblePivotObserver()
319 : {
320 : /* destructor code */
321 : }
322 :
323 : /* void onPivotChanged (in nsIAccessiblePivot aPivot, in nsIAccessible aOldAccessible, in long aOldStart, in long aOldEnd); */
324 : NS_IMETHODIMP nsAccessiblePivotObserver::OnPivotChanged(nsIAccessiblePivot *aPivot, nsIAccessible *aOldAccessible, PRInt32 aOldStart, PRInt32 aOldEnd)
325 : {
326 : return NS_ERROR_NOT_IMPLEMENTED;
327 : }
328 :
329 : /* End of implementation class template. */
330 : #endif
331 :
332 :
333 : /* starting interface: nsIAccessibleTraversalRule */
334 : #define NS_IACCESSIBLETRAVERSALRULE_IID_STR "307d98b6-dba9-49cf-ba17-ef8b053044eb"
335 :
336 : #define NS_IACCESSIBLETRAVERSALRULE_IID \
337 : {0x307d98b6, 0xdba9, 0x49cf, \
338 : { 0xba, 0x17, 0xef, 0x8b, 0x05, 0x30, 0x44, 0xeb }}
339 :
340 : class NS_NO_VTABLE NS_SCRIPTABLE nsIAccessibleTraversalRule : public nsISupports {
341 : public:
342 :
343 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IACCESSIBLETRAVERSALRULE_IID)
344 :
345 : enum {
346 : FILTER_IGNORE = 0U,
347 : FILTER_MATCH = 1U,
348 : FILTER_IGNORE_SUBTREE = 2U,
349 : PREFILTER_INVISIBLE = 1U,
350 : PREFILTER_OFFSCREEN = 2U,
351 : PREFILTER_NOT_FOCUSABLE = 4U
352 : };
353 :
354 : /* readonly attribute unsigned long preFilter; */
355 : NS_SCRIPTABLE NS_IMETHOD GetPreFilter(PRUint32 *aPreFilter) = 0;
356 :
357 : /* void getMatchRoles ([array, size_is (aCount)] out unsigned long aRoles, [retval] out unsigned long aCount); */
358 : NS_SCRIPTABLE NS_IMETHOD GetMatchRoles(PRUint32 **aRoles NS_OUTPARAM, PRUint32 *aCount NS_OUTPARAM) = 0;
359 :
360 : /* unsigned short match (in nsIAccessible aAccessible); */
361 : NS_SCRIPTABLE NS_IMETHOD Match(nsIAccessible *aAccessible, PRUint16 *_retval NS_OUTPARAM) = 0;
362 :
363 : };
364 :
365 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIAccessibleTraversalRule, NS_IACCESSIBLETRAVERSALRULE_IID)
366 :
367 : /* Use this macro when declaring classes that implement this interface. */
368 : #define NS_DECL_NSIACCESSIBLETRAVERSALRULE \
369 : NS_SCRIPTABLE NS_IMETHOD GetPreFilter(PRUint32 *aPreFilter); \
370 : NS_SCRIPTABLE NS_IMETHOD GetMatchRoles(PRUint32 **aRoles NS_OUTPARAM, PRUint32 *aCount NS_OUTPARAM); \
371 : NS_SCRIPTABLE NS_IMETHOD Match(nsIAccessible *aAccessible, PRUint16 *_retval NS_OUTPARAM);
372 :
373 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
374 : #define NS_FORWARD_NSIACCESSIBLETRAVERSALRULE(_to) \
375 : NS_SCRIPTABLE NS_IMETHOD GetPreFilter(PRUint32 *aPreFilter) { return _to GetPreFilter(aPreFilter); } \
376 : NS_SCRIPTABLE NS_IMETHOD GetMatchRoles(PRUint32 **aRoles NS_OUTPARAM, PRUint32 *aCount NS_OUTPARAM) { return _to GetMatchRoles(aRoles, aCount); } \
377 : NS_SCRIPTABLE NS_IMETHOD Match(nsIAccessible *aAccessible, PRUint16 *_retval NS_OUTPARAM) { return _to Match(aAccessible, _retval); }
378 :
379 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
380 : #define NS_FORWARD_SAFE_NSIACCESSIBLETRAVERSALRULE(_to) \
381 : NS_SCRIPTABLE NS_IMETHOD GetPreFilter(PRUint32 *aPreFilter) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPreFilter(aPreFilter); } \
382 : NS_SCRIPTABLE NS_IMETHOD GetMatchRoles(PRUint32 **aRoles NS_OUTPARAM, PRUint32 *aCount NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMatchRoles(aRoles, aCount); } \
383 : NS_SCRIPTABLE NS_IMETHOD Match(nsIAccessible *aAccessible, PRUint16 *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->Match(aAccessible, _retval); }
384 :
385 : #if 0
386 : /* Use the code below as a template for the implementation class for this interface. */
387 :
388 : /* Header file */
389 : class nsAccessibleTraversalRule : public nsIAccessibleTraversalRule
390 : {
391 : public:
392 : NS_DECL_ISUPPORTS
393 : NS_DECL_NSIACCESSIBLETRAVERSALRULE
394 :
395 : nsAccessibleTraversalRule();
396 :
397 : private:
398 : ~nsAccessibleTraversalRule();
399 :
400 : protected:
401 : /* additional members */
402 : };
403 :
404 : /* Implementation file */
405 : NS_IMPL_ISUPPORTS1(nsAccessibleTraversalRule, nsIAccessibleTraversalRule)
406 :
407 : nsAccessibleTraversalRule::nsAccessibleTraversalRule()
408 : {
409 : /* member initializers and constructor code */
410 : }
411 :
412 : nsAccessibleTraversalRule::~nsAccessibleTraversalRule()
413 : {
414 : /* destructor code */
415 : }
416 :
417 : /* readonly attribute unsigned long preFilter; */
418 : NS_IMETHODIMP nsAccessibleTraversalRule::GetPreFilter(PRUint32 *aPreFilter)
419 : {
420 : return NS_ERROR_NOT_IMPLEMENTED;
421 : }
422 :
423 : /* void getMatchRoles ([array, size_is (aCount)] out unsigned long aRoles, [retval] out unsigned long aCount); */
424 : NS_IMETHODIMP nsAccessibleTraversalRule::GetMatchRoles(PRUint32 **aRoles NS_OUTPARAM, PRUint32 *aCount NS_OUTPARAM)
425 : {
426 : return NS_ERROR_NOT_IMPLEMENTED;
427 : }
428 :
429 : /* unsigned short match (in nsIAccessible aAccessible); */
430 : NS_IMETHODIMP nsAccessibleTraversalRule::Match(nsIAccessible *aAccessible, PRUint16 *_retval NS_OUTPARAM)
431 : {
432 : return NS_ERROR_NOT_IMPLEMENTED;
433 : }
434 :
435 : /* End of implementation class template. */
436 : #endif
437 :
438 :
439 : #endif /* __gen_nsIAccessiblePivot_h__ */
|