1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23#ifndef __com_sun_star_text_AccessibleFootnoteView_idl__
24#define __com_sun_star_text_AccessibleFootnoteView_idl__
25
26#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
27#include <com/sun/star/accessibility/XAccessibleContext.idl>
28#endif
29
30#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
31#include <com/sun/star/accessibility/XAccessibleComponent.idl>
32#endif
33
34#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
35#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
36#endif
37
38
39//=============================================================================
40
41module com {  module sun {  module star {  module text {
42
43//=============================================================================
44
45/** The accessible view of footnotes.
46
47	 @since OpenOffice 1.1.2
48
49 */
50published service AccessibleFootnoteView
51{
52	/** This interface gives access to any paragraph fragment and table
53	    fragment that is contained in a footnote and is at least
54		partially visible on the screen.
55
56		<ul>
57			<li>The parent returned by <method scope="::com::sun::star::accessibility"
58                >XAccessibleContext::getAccessibleParent</method>
59				is either the accessible view of a text document,
60				a page of the accessible page preview of a text document,
61				or the accessible page preview of a spreadsheet document.
62			<li>The children returned by <method scope="::com::sun::star::accessibility"
63                >XAccessibleContext::getAccessibleChild</method> all
64				support the interface XAccessible. Calling
65				<method scope="::com::sun::star::accessibility"
66                >XAccessible::getAccessibleContext</method> for these children returns
67				an object that supports one of the following services.
68				<ul>
69					<li><type scope="::com::sun::star::text"
70                        >AccessibleParagraphView</type>:
71						A child of this kind is returned for every paragraph
72						fragment that is contained in the document body and
73						is at least partially visible. A paragraph fragment is
74						the part of a paragraph that is displayed on a
75						certain page.
76					<li><type scope="::com::sun::star::table"
77                        >AccessibleTableView</type>:
78						A child of this kind is returned for every table
79						fragment that is contained in the document body
80						and is at least partially visible. A table fragment is
81						the part of a table that is displayed on a certain page.
82				</ul>
83				<p>The logical order of paragraph and table fragments is never
84				   changed.
85			<li>The role is <const scope="::com::sun::star::accessibility"
86                >AccessibleRole::FOOTNOTE</const>
87			<li>The name is "footnote" (or the equivalent term
88				in application's language) with a number appended.
89			<li>The description is footnote" (or the equivalent term
90				in application's language) with the footnote number or
91				character appended in the format that is specified in the
92				footnote settings.
93			<li>There are no relations. <em>TODO: One might specify a relation
94				to the footnote anchor's paragraph.</em>
95			<li>The following states might be contained in the state set
96				returned by <method scope="::com::sun::star::accessibility"
97                >XAccessible::getAccessibleStateSet</type>:
98				<ul>
99					<li><const scope="::com::sun::star::accessibility"
100                        >AccessibleStateType::DEFUNC</const> (indicates that
101                        the document window has been closed or the footnote is
102						not existing any longer)
103					<li><const scope="::com::sun::star::accessibility"
104                        >AccessibleStateType::EDITABLE</const>
105					<li><const scope="::com::sun::star::accessibility"
106                        >AccessibleStateType::ENABLED</const> (always contained)
107					<li><const scope="::com::sun::star::accessibility"
108                        >AccessibleStateType::OPAQUE</const>
109					<li><const scope="::com::sun::star::accessibility"
110                        >AccessibleStateType::SHOWING</const>
111					<li><const scope="::com::sun::star::accessibility"
112                        >AccessibleStateType::VISIBLE</const>
113				</ul>
114			<li>Depending of the application's region setting, the locale is
115				the western, asian or complex default language of the document.
116		</ul>
117
118	 */
119	interface ::com::sun::star::accessibility::XAccessibleContext;
120
121	/** This interface describes the graphical representation of a
122	  	footnote.
123	 */
124	interface ::com::sun::star::accessibility::XAccessibleComponent;
125
126	/** This is the interface for listeners */
127	interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
128};
129
130//=============================================================================
131
132}; }; }; };
133
134#endif
135