/* -*- 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 . */ module com { module sun { module star { module drawing { /** The AccessibleShape service is implemented by UNO shapes to provide accessibility information that describe the shape's features. A UNO shape is any object that implements the ::com::sun::star::drawing::XShape interface.
The content of a draw page is modelled as tree of accessible shapes and accessible text paragraphs. The root of this (sub-)tree is the accessible draw document view. An accessible shape implements either this service or one of the "derived" services AccessibleGraphicShape or AccessibleOLEShape. See the section Children in the description of the ::com::sun::star::accessibility::XAccessibleContext interface support for more details.
There are two services that extend this one: the AccessibleGraphicShape and the AccessibleOLEShape services provide additional interfaces. See there for details.
A shape object is either fully or partially visible on the screen or has set the ::com::sun::star::accessibility::AccessibleStateType::DEFUNC state to indicate that it is no longer actively supported by its parent.
Each shape object that has not set the DEFUNC state has a valid parent. That is either the containing draw page or a group shape or a 3D scene object.
@since OOo 1.1.2 */ service AccessibleShape { /** 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 shape.You can access the following information for the shape being made accessible:
com::sun::star::accessibility::AccessibleStateType::DEFUNC is set if an accessible shape is not visible but still existent for some reason. This should not really happen and is a sign that someone, e.g. an AT-Tool holds references to such a shape. The reason for this is that either the owner of the accessible shape did not remove it from its list of children or that the AT-Tool does not care for the events indicating this.
Usually an object that has the com::sun::star::accessibility::AccessibleStateType::DEFUNC state set has already been disposed and subsequent calls to this object result in ::com::sun::star::lang::DisposedException exceptions.
If this state is set then no other of the states below is set. This is also true for the states that are otherwise always set (which makes "always" more of a sort of "normally").
The bounding box returned by the ::com::sun::star::accessibility::XAccessibleComponent::getBounds() function returns the shape's bounding box clipped at its parent's bounding box
An accessible shape tries as best as it can to return proper values for calls to the ::com::sun::star::accessibility::XAccessibleExtendedComponent::getForeground() and ::com::sun::star::accessibility::XAccessibleExtendedComponent::getBackground() functions. If the shape is painted with a uniform and non-transparent color then the returned colors may differ from the ones visible on the screen.
Key bindings are not supported at the moment
*/ interface ::com::sun::star::accessibility::XAccessibleComponent; /** Give extended access to the graphical representation of a shape.The functions ::com::sun::star::accessibility::XAccessibleExtendedComponent::getFont(), ::com::sun::star::accessibility::XAccessibleExtendedComponent::getTitledBorderText(), and ::com::sun::star::accessibility::XAccessibleExtendedComponent::getToolTipText() are not supported and return empty references respectively empty strings.
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.
*/ [optional] interface ::com::sun::star::accessibility::XAccessibleExtendedComponent; }; }; }; }; }; /* vim:set shiftwidth=4 softtabstop=4 expandtab: */