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#ifndef __com_sun_star_text_AccessibleHeaderFooterView_idl__
28#define __com_sun_star_text_AccessibleHeaderFooterView_idl__
29
30#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
31#include <com/sun/star/accessibility/XAccessibleContext.idl>
32#endif
33
34#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
35#include <com/sun/star/accessibility/XAccessibleComponent.idl>
36#endif
37
38#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
39#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
40#endif
41
42
43//=============================================================================
44
45module com {  module sun {  module star {  module text {
46
47//=============================================================================
48
49/** The accessible view of headers and footers.
50
51	 @since OOo 1.1.2
52
53 */
54published service AccessibleHeaderFooterView
55{
56	/** This interface gives access to any paragraph and table that is
57	  	contained in the header and footer and is at least partially visible
58		on the screen.
59
60		<ul>
61			<li>The parent returned by
62                <method scope="::com::sun::star::accessibility"
63                >XAccessibleContext::getAccessibleParent</method>
64				is either the accessible view of a text document,
65				a page of the accessible page preview of a text document,
66				or the accessible page preview of a spreadsheet document.
67			<li>The children returned by
68                <method scope="::com::sun::star::accessibility"
69                >XAccessibleContext::getAccessibleChild</method> all
70				support the interface XAccessible. Calling
71				<method scope="::com::sun::star::accessibility"
72                >XAccessible::getAccessibleContext</method> for these children returns
73				an object that supports one of the following services.
74				<ul>
75					<li><type scope="::com::sun::star::text"
76                        >AccessibleParagraphView</type>:
77						A child of this kind is returned for every paragraph
78						that is contained in the document body and
79						is at least partially visible. The child always
80						represents a whole paragarph (and not a fragment only),
81						because there are no page breaks within headers and
82						footers.
83					<li><type scope="::com::sun::star::table"
84                        >AccessibleTableView</type>:
85						A child of this kind is returned for every table
86						that is contained in the document body
87						and is at least partially visible. The child always
88						represents a whole table (and not a fragment only),
89						because there are no page breaks within headers and
90						footers.
91				</ul>
92			<p>The logical order of paragraphs and tables is never changed.
93			<li>The role is either
94                <const scope="::com::sun::star::accessibility"
95                >AccessibleRole::HEADER</const> or
96                <const scope="::com::sun::star::accessibility"
97                >AccessibleRole::FOOTER</const>.
98			<li>The name is "header" or "footer" (or the equivalent term
99				in application's language) with a number appended.
100			<li>The description is "header" or "footer" (or the equivalent term
101				in application's language) with the page number appended in
102				the format that is specified in the page's style.
103			<li>There are no relations.
104			<li>The following states might be contained in the state set
105				returned by <method scope="::com::sun::star::accessibility"
106                >XAccessible::getAccessibleStateSet</type>:
107				<ul>
108					<li><const scope="::com::sun::star::accessibility"
109                        >AccessibleStateType::DEFUNC</const> (indicates that
110                        the document window has been closed or the header or
111                        footer is not existing any longer)
112					<li><const scope="::com::sun::star::accessibility"
113                        >AccessibleStateType::EDITABLE</const>
114					<li><const scope="::com::sun::star::accessibility"
115                        >AccessibleStateType::ENABLED</const> (always contained)
116					<li><const scope="::com::sun::star::accessibility"
117                        >AccessibleStateType::OPAQUE</const>
118					<li><const scope="::com::sun::star::accessibility"
119                        >AccessibleStateType::SHOWING</const>
120					<li><const scope="::com::sun::star::accessibility"
121                        >AccessibleStateType::VISIBLE</const>
122				</ul>
123			<li>Depending of the application's region setting, the locale is
124				the western, asian or complex default language of the document.
125		</ul>
126
127	 */
128	interface ::com::sun::star::accessibility::XAccessibleContext;
129
130	/** This interface describes the graphical representation of a header
131	  	or footer.
132	 */
133	interface ::com::sun::star::accessibility::XAccessibleComponent;
134
135	/** This is the interface for listeners */
136	interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
137};
138
139//=============================================================================
140
141}; }; }; };
142
143#endif
144