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