1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27
28#ifndef __com_sun_star_awt_AccessibleList_idl__
29#define __com_sun_star_awt_AccessibleList_idl__
30
31#ifndef __com_sun_star_accessibility_AccessibleContext_idl__
32#include <com/sun/star/accessibility/AccessibleContext.idl>
33#endif
34
35module com { module sun { module star { module accessibility {
36
37 published interface XAccessible;
38 published interface XAccessibleExtendedComponent;
39 published interface XAccessibleComponent;
40 published interface XAccessibleSelection;
41
42}; }; }; };
43
44module com { module sun { module star { module awt {
45
46
47
48/** Accessible lists are used by combo boxes as container for
49    the list items.
50
51	@see com::sun::star::accessibility::AccessibleContext
52
53    @see com::sun::star::accessibility::XAccessibleComponent
54	@see com::sun::star::accessibility::XAccessibleExtendedComponent
55	@see ::com::sun::star::accessibility::XAccessibleSelection
56
57	@since OOo 1.1.2
58*/
59published service AccessibleList
60{
61	/** This interface gives access to the structural information of a list:
62
63       <ul>
64       <li>Role: The role of a list is <const
65           scope="::com::sun::star::accessibility"
66           >AccessibleRole::LIST</const>.</li>
67       <li>Name: The name of a list is its localized label.</li>
68       <li>Description: The description of a list is its localized
69           help text.</li>
70       <li>Children: There exists children.
71			Each child is of type <type scope="com::sun::star::awt">AccessibleListItem</type>. </li>
72       <li>Parent: The parent can be of type
73			<ul>
74			<li>
75				<type scope="com::sun::star::awt">AccessibleComboBox</type>
76				<type scope="com::sun::star::awt">AccessibleListBox</type>
77				<type scope="com::sun::star::awt">AccessibleDropDownListBox</type>
78				<type scope="com::sun::star::awt">AccessibleDropDownComboBox</type>
79			</li>
80			.
81	   </li>
82       <li>Relations: There are no relations.</li>
83       <li>States: The states supported by this service are
84           <ul>
85           <li><const scope="com::sun::star::accessibility"
86               >AccessibleStateType::DEFUNC</const>
87               is set if the object has already been disposed
88               and subsequent calls to this object result in
89               <type scope="com::sun::star::lang">DisposedException</type>
90               exceptions.</li>
91           <li><const scope="com::sun::star::accessibility"
92               >AccessibleStateType::ENABLED</const> is set
93               if the object is enabled.</li>
94           <li><const scope="com::sun::star::accessibility"
95               >AccessibleStateType::FOCUSABLE</const> is always set.</li>
96           <li><const scope="com::sun::star::accessibility"
97               >AccessibleStateType::FOCUSED</const> is set
98               if the object currently has the keyboard focus.</li>
99           <li><const scope="com::sun::star::accessibility"
100               >AccessibleStateType::ACTIVE</const> is set
101               if a child has currently the focus.</li>
102		   <li><const scope="com::sun::star::accessibility"
103               >AccessibleStateType::RESIZABLE</const> is set
104               if the object can be resized.</li>
105           <li><const scope="com::sun::star::accessibility"
106               >AccessibleStateType::SHOWING</const> is set
107               if the object is displayed on the screen.</li>
108           <li><const scope="com::sun::star::accessibility"
109               >AccessibleStateType::VISIBLE</const> is always set.</li>
110		   <li><const scope="com::sun::star::accessibility"
111               >AccessibleStateType::MULTI_SELECTABLE</const> is set
112			   if the list supports multi selection.</li>
113		   <li><const scope="com::sun::star::accessibility"
114               >AccessibleStateType::MANAGES_DESCENDANTS</const> is always set.
115			   The children are transient.</li>
116           </ul>
117           </li>
118       </ul>
119    */
120    service   com::sun::star::accessibility::AccessibleContext;
121
122	interface com::sun::star::accessibility::XAccessibleComponent;
123	interface com::sun::star::accessibility::XAccessibleExtendedComponent;
124
125    /** Support of the <type scope="com::sun::star::accessibility">XAccessible</type> interface may be
126        discontinued in the future.
127    */
128    interface com::sun::star::accessibility::XAccessible;
129
130    /** This interface gives access to the selectable children of a
131        list.
132     */
133	interface com::sun::star::accessibility::XAccessibleSelection;
134};
135
136}; }; }; };
137
138#endif
139