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_chart_AccessibleChartDocumentView_idl__
29#define __com_sun_star_chart_AccessibleChartDocumentView_idl__
30
31#ifndef __com_sun_star_accessibility_XAccessible_idl__
32#include <com/sun/star/accessibility/XAccessible.idl>
33#endif
34#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
35#include <com/sun/star/accessibility/XAccessibleContext.idl>
36#endif
37#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
38#include <com/sun/star/accessibility/XAccessibleComponent.idl>
39#endif
40
41module com {  module sun {  module star {  module chart {
42
43/** The <type>AccessibleChartDocumentView</type> service is supported
44    by a Component that represents the view of a Chart document to
45    provide an entry point to the document tree for accessibility.
46
47    <p>An object that implements the <type>AccessibleChartDocumentView</type>
48    service provides information about itself and about the chart
49    subcomponents contained in the chart document displayed in a
50    window.  This service gives a simplified view on the underlying
51    implementation.  It tries both to keep the structure of the
52    accessibility representation tree as simple as possible and
53    provide as much relevant information as possible.</p>
54
55    @since OOo 1.1.2
56*/
57published service AccessibleChartDocumentView
58{
59    /** Base interface for being accessible.  It gives access to the
60        <type scope="::com::sun::star::accessibility">XAccessibleContext</type>
61        interface.
62    */
63    interface ::com::sun::star::accessibility::XAccessible;
64
65    /** Provide access to a Chart document's view.
66
67        <p>You can access the following information:</p>
68        <dl>
69         <dt>Role</dt>
70             <dd>The object's role is
71             <const scope="com::sun::star::accessibility">AccessibleRole::DOCUMENT</const>.</dd>
72         <dt>Name</dt>
73             <dd>Its name is the document's name or the base name of the filename if
74             no document name has been set explicitly.</dd>
75         <dt>Description</dt>
76             <dd>The description is the document's description or the
77             full filename if no description has been set
78             explicitly.</dd>
79          <dt>Children</dt>
80             <dd>The subcomponents of a chart.  This includes all kinds of
81             titles, a legend and the diagram.  The diagram and the legend are
82             the only children that themselves contain children.  The Chart
83             subcomponents support the service
84             <type>AccessibleChartElement</type>.  Additionally, there may be
85             shapes a user added via the clipboard.  For details see the
86             <type scope="::com::sun::star::drawing">AccessibleShape</type>.
87             </dd>
88         <dt>Parent</dt>
89             <dd>The parent will usually be the window that contains the
90             Chart document view.  It has to be set via implementation dependent
91             ways.</dd>
92         <dt>Relations</dt>
93             <dd>At the moment relations are not supported.  The method
94             <member scope="com::sun::star::accessibility">XAccessibleContext::getAccessibleRelationSet</member>
95             will always return an empty set.</dd>
96         <dt>States</dt>
97             <dd>The following states are supported:
98             <ul>
99              <li><const scope="com::sun::star::accessibility">AccessibleStateType::DEFUNC</const>
100                  is set if a document view becomes obsolete like when
101                  the window, which displays the view, is closed.</li>
102              <li><const scope="com::sun::star::accessibility">AccessibleStateType::ENABLED</const>
103                  is always set unless the
104                  <const scope="com::sun::star::accessibility">AccessibleStateType::DEFUNC</const>
105                  state is set.</li>
106              <li><const scope="com::sun::star::accessibility">AccessibleStateType::OPAQUE</const>
107                  is always set.</li>
108              <li><const scope="com::sun::star::accessibility">AccessibleStateType::SHOWING</const>
109                  is always set unless the
110                  <const scope="com::sun::star::accessibility">AccessibleStateType::DEFUNC</const>
111                  state is set.</li>
112              <li><const scope="com::sun::star::accessibility">AccessibleStateType::VISIBLE</const>
113                  is always set unless the
114                  <const scope="com::sun::star::accessibility">AccessibleStateType::DEFUNC</const>
115                  state is set.</li>
116             </ul>
117             </dd>
118         <dt>Locale</dt>
119             <dd>Is the locale set at the document.</dd>
120         <dt>Property change listeners</dt>
121             <dd>They are supported to inform the
122             listeners about changes in this object.</dd>
123        </dl>
124    */
125    interface ::com::sun::star::accessibility::XAccessibleContext;
126
127    /** Provide access to a Chart document's graphical representation.
128
129        <p>The main purpose of this interface is to provide a bounding
130        box of the currently visible area and to let the user find the
131        subcomponents of a chart that cover a given test point.</p>
132
133        <p>The accessible Chart subcomponents all support the service
134        <type>AccessibleChartElement</type></p>
135
136        @see AccessibleChartElement
137    */
138    interface ::com::sun::star::accessibility::XAccessibleComponent;
139};
140
141}; }; }; };
142
143#endif
144