2007-12-03 Li Yuan <li.yuan@sun.com>
[platform/core/uifw/at-spi2-atk.git] / idl / Accessibility_Collection.idl
1  /* 
2   * AT-SPI - Assistive Technology Service Provider Interface 
3   * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
4   *
5   * Copyright 2005 Sun Microsystems, Inc.
6   *
7   * This library is free software; you can redistribute it and/or
8   * modify it under the terms of the GNU Library General Public
9   * License as published by the Free Software Foundation; either
10   * version 2 of the License, or (at your option) any later version.
11   *
12   * This library is distributed in the hope that it will be useful,
13   * but WITHOUT ANY WARRANTY; without even the implied warranty of
14   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15   * Library General Public License for more details.
16   *
17   * You should have received a copy of the GNU Library General Public
18   * License along with this library; if not, write to the
19   * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20   * Boston, MA 02111-1307, USA.
21   */
22
23 #ifndef __ACCESSIBILITY_COLLECTION_DEFINED__
24 #define __ACCESSIBILITY_COLLECTION_DEFINED__
25  
26 module Accessibility {
27   
28
29   typedef sequence<Accessible> AccessibleSet;
30
31  
32      interface MatchRule {
33      };
34
35
36      interface Collection : Bonobo::Unknown {
37  
38        enum SortOrder {
39             SORT_ORDER_INVALID,
40             SORT_ORDER_CANONICAL, 
41             SORT_ORDER_FLOW, 
42             SORT_ORDER_TAB, 
43             SORT_ORDER_REVERSE_CANONICAL, 
44             SORT_ORDER_REVERSE_FLOW, 
45             SORT_ORDER_REVERSE_TAB, 
46             SORT_ORDER_LAST_DEFINED
47        };
48    
49        enum MatchType {
50            MATCH_INVALID, 
51            MATCH_ALL, 
52            MATCH_ANY, 
53            MATCH_NONE,
54            MATCH_EMPTY,
55            MATCH_LAST_DEFINED
56            };
57
58
59         boolean isAncestorOf (in Accessible object); 
60   
61         MatchRule        createMatchRule (in StateSet states,
62                                           in MatchType statematchtype,
63                                           in AttributeSet attributes,
64                                           in MatchType attributematchtype,
65                                           in RoleSet roles,
66                                           in MatchType rolematchtype,
67                                           in string interfaces,
68                                           in MatchType interfacematchtype,
69                                           in boolean invert);
70
71         void             freeMatchRule (in MatchRule rule);
72
73         AccessibleSet getMatches (in MatchRule rule,
74                                   in SortOrder sortby,
75                                   in long count,
76                                   in boolean traverse); 
77
78         AccessibleSet getMatchesTo (in Accessible current_object,
79                                            in MatchRule rule, 
80                                            in SortOrder sortby, 
81                                            in boolean recurse,
82                                            in long count,
83                                            in boolean traverse);
84
85
86         AccessibleSet getMatchesFrom (in Accessible current_object,
87                                        in MatchRule rule, 
88                                        in SortOrder sortby, 
89                                        in boolean isrestrict,
90                                        in long count,
91                                        in boolean traverse);
92
93         Accessible getActiveDescendant ();
94         
95         void unImplemented ();
96         void unImplemented2 ();
97         void unImplemented3 ();
98         void unImplemented4 (); 
99    };
100 };
101
102 #endif