forked from amazingfate/loongoffice
184 lines
8.4 KiB
Plaintext
184 lines
8.4 KiB
Plaintext
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/*
|
|
* This file is part of the LibreOffice project.
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*
|
|
* This file incorporates work covered by the following license notice:
|
|
*
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
* contributor license agreements. See the NOTICE file distributed
|
|
* with this work for additional information regarding copyright
|
|
* ownership. The ASF licenses this file to you under the Apache
|
|
* License, Version 2.0 (the "License"); you may not use this file
|
|
* except in compliance with the License. You may obtain a copy of
|
|
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
|
|
*/
|
|
|
|
#ifndef __com_sun_star_chart_AccessibleChartElement_idl__
|
|
#define __com_sun_star_chart_AccessibleChartElement_idl__
|
|
|
|
#include <com/sun/star/accessibility/XAccessible.idl>
|
|
#include <com/sun/star/accessibility/XAccessibleContext.idl>
|
|
#include <com/sun/star/accessibility/XAccessibleExtendedComponent.idl>
|
|
|
|
|
|
module com { module sun { module star { module chart {
|
|
|
|
/** This service is supported by all components that are contained in
|
|
the view of a chart document that are controlled by the chart.
|
|
Shapes added by a user via the clipboard are not treated as chart
|
|
elements.
|
|
|
|
<p>The list of objects that implement this service is
|
|
::com::sun::star::chart::ChartTitle,
|
|
::com::sun::star::chart::ChartLegend,
|
|
::com::sun::star::chart::Diagram,
|
|
::com::sun::star::chart::ChartAxis,
|
|
::com::sun::star::chart::ChartDataRowProperties,
|
|
::com::sun::star::chart::ChartDataPointProperties.
|
|
</p>
|
|
|
|
<p>The
|
|
::com::sun::star::accessibility::XAccessibleExtendedComponent
|
|
is supported by all chart elements.</p>
|
|
|
|
@since OOo 1.1.2
|
|
*/
|
|
service AccessibleChartElement
|
|
{
|
|
/** Base interface for being accessible. It gives access to the
|
|
::com::sun::star::accessibility::XAccessibleContext
|
|
interface.
|
|
*/
|
|
interface ::com::sun::star::accessibility::XAccessible;
|
|
|
|
/** Give access to the structural information of a chart element.
|
|
|
|
<p>You can access the following information for the shapes of the above listed types:
|
|
<dl>
|
|
<dt>Role</dt>
|
|
<dd>All chart elements have the role
|
|
::com::sun::star::accessibility::AccessibleRole::SHAPE.
|
|
</dd>
|
|
<dt>Name</dt>
|
|
<dd>For unique elements you get fixed names. The unique
|
|
elements are the titles, legend, diagram and axes. The
|
|
names you get for them are "main-title", "sub-title",
|
|
"(x|y|z)-axis-title", "legend", "diagram", "(x|y|z)-axis"
|
|
and "second-(x|y)-axis", respectively.</dd>
|
|
<dt>Description</dt>
|
|
<dd>Descriptions contain a list of selected
|
|
attributes. These attributes are, if applicable:
|
|
foreground and background color, line width, font name and
|
|
size. The purpose of these attributes is to give a rough
|
|
description of the more simple geometric shapes. The list
|
|
is very restricted in order to avoid overwhelming or
|
|
confusing the user.</dd>
|
|
<dt>Children</dt>
|
|
<dd>The ::com::sun::star::chart::Diagram and
|
|
the ::com::sun::star::chart::ChartLegend
|
|
contain children, all other objects in a chart do not, i.e., are
|
|
leaves in the document representation tree.</dd>
|
|
<dt>Parent</dt>
|
|
<dd>Because the <code>setParent</code> method from the JAVA has
|
|
been removed, the reference to the parent has to be provided in an
|
|
implementation specific way.</dd>
|
|
<dt>Relations</dt>
|
|
<dd>They are not used at the moment.</dd>
|
|
|
|
<dt>States</dt>
|
|
<dd>The states supported by this service are:
|
|
<ul>
|
|
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::DEFUNC
|
|
is set if an object was removed. This indicates that the user
|
|
should release all references to the accessible object. If
|
|
this state is set then no other of the states below is set.
|
|
</li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::EDITABLE</li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::ENABLED
|
|
is always set.<sup>*</sup></li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::MULTI_LINE
|
|
is set for all titles.</li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::OPAQUE
|
|
is set for all elements that do have a transparency
|
|
attributes set to 0% and no transparency gradient.</li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::RESIZABLE
|
|
Is set for the diagram object only. All other chart elements may not be resized.</li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::SELECTABLE</li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::SELECTED</li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::SHOWING
|
|
is always set.<sup>*</sup></li>
|
|
<li>::com::sun::star::accessibility::AccessibleStateType::VISIBLE
|
|
is always set.<sup>*</sup></li>
|
|
</ul>
|
|
<sup>*</sup>always, except if the state
|
|
::com::sun::star::accessibility::AccessibleStateType::DEFUNC
|
|
is set.</dd>
|
|
<dt>Locale</dt>
|
|
<dd>is supported.</dd>
|
|
<dt>Property change listeners</dt>
|
|
<dd>Property change listeners that are registered with a chart
|
|
element are informed if the size or position or an attribute
|
|
changed. The last point needs a short explanation: An attribute
|
|
change is signaled even if that attribute is not part of the
|
|
shape's description and is therefore not explicitly represented by
|
|
the UAA.</dd>
|
|
</dl>
|
|
*/
|
|
interface ::com::sun::star::accessibility::XAccessibleContext;
|
|
|
|
/** Give access to the graphical representation of a chart element.
|
|
|
|
<p>The coordinate oriented methods <code>contains</code>,
|
|
<code>getAccessibleAt</code>, <code>getBounds</code>,
|
|
<code>getLocation</code>, <code>getLocationOnScreen</code>, and
|
|
<code>getSize</code> work on pixel coordinates. (To transform between
|
|
the internal 100th of mm and pixels a chart element has to have access
|
|
to information that allows it to do so. These information are the
|
|
enclosing window's size in pixel, 100th of mm, and its own relative
|
|
position in one or the other coordinate system).</p>
|
|
|
|
<p>Focus handling depends on support of the
|
|
::com::sun::star::accessibility::XAccessibleText and
|
|
::com::sun::star::accessibility::XAccessibleEditableText
|
|
interfaces.</p>
|
|
|
|
<p>Key bindings are not supported at the moment</p>
|
|
*/
|
|
interface ::com::sun::star::accessibility::XAccessibleComponent;
|
|
|
|
/** Give extended access to the graphical representation of a chart element.
|
|
|
|
<p>This interface is used primarily to provide the predominant
|
|
foreground and background colors and—if applicable, i.e. the
|
|
::com::sun::star::accessibility::XAccessibleText
|
|
interface is supported—information about the font used to display
|
|
text.</p>
|
|
|
|
<p>The foreground and background colors may in some cases be directly
|
|
taken from the object. In other cases, for example when a gradient or a
|
|
texture is used, they have to be interpolated. The color returned may
|
|
not be appropriate in all cases.</p>
|
|
|
|
<p>Specifying the font used for displaying text depends on the
|
|
transformation of UNO API font information into the Java™ format.
|
|
However, if the UAA is used directly, this is of course not an
|
|
issue.</p>
|
|
|
|
<p>The support of this interface is optional to reduce overhead in case
|
|
that no text is displayed and color information can not be determined
|
|
with an acceptable cost.</p>
|
|
*/
|
|
[optional] interface ::com::sun::star::accessibility::XAccessibleExtendedComponent;
|
|
};
|
|
|
|
}; }; }; };
|
|
|
|
#endif
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|