From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:06:44 +0200 Subject: Adding upstream version 4:7.4.7. Signed-off-by: Daniel Baumann --- offapi/com/sun/star/drawing/AccessibleShape.idl | 189 ++++++++++++++++++++++++ 1 file changed, 189 insertions(+) create mode 100644 offapi/com/sun/star/drawing/AccessibleShape.idl (limited to 'offapi/com/sun/star/drawing/AccessibleShape.idl') diff --git a/offapi/com/sun/star/drawing/AccessibleShape.idl b/offapi/com/sun/star/drawing/AccessibleShape.idl new file mode 100644 index 000000000..7e10a6fe5 --- /dev/null +++ b/offapi/com/sun/star/drawing/AccessibleShape.idl @@ -0,0 +1,189 @@ +/* -*- 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_drawing_AccessibleShape_idl__ +#define __com_sun_star_drawing_AccessibleShape_idl__ + +#include +#include +#include + +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: +

    +
  • Role: The role of all shapes is + com::sun::star::accessibility::AccessibleRole::SHAPE.
  • +
  • Name: The name of a shape is its localized type name.
  • +
  • Description: Descriptions are localized and start with the + shape's type and style. After that follow some properties that + differ from the defaults with respect to the style. +
  • Children: The children of a shape are either other accessible + shapes or accessible text paragraphs. Only group shapes, 3D scene + shapes, and OLE shapes may contain other shapes as children. + Some of the shapes may have text paragraphs as (additional) + children. See ::com::sun::star::text::AccessibleParagraphView for + details of how this text is represented.
  • +
  • Parent: The parent is either the document view as represented by + AccessibleDrawDocumentView or a group shape, 3D + scene shape, or OLE shape.
  • +
  • Relations: Are set and maintained from the outside. See the + service description of the object that has accessible shapes as + children for details.
  • +
  • States: The states supported by this service are: +
      +
    • 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").

    • +
    • com::sun::star::accessibility::AccessibleStateType::EDITABLE + is always set. + This state is interpreted to mean that not only text but + also other, graphical, properties of a shape can be modified. +
    • +
    • com::sun::star::accessibility::AccessibleStateType::ENABLED + is always set.
    • +
    • com::sun::star::accessibility::AccessibleStateType::FOCUSABLE + is always set.
    • +
    • com::sun::star::accessibility::AccessibleStateType::FOCUSED + is set according to + whether the shape currently has the focus.
    • +
    • com::sun::star::accessibility::AccessibleStateType::MULTI_LINE + is set if a shape supports the + ::com::sun::star::accessibility::XAccessibleText interface.
    • +
    • com::sun::star::accessibility::AccessibleStateType::OPAQUE + is set for certain shapes + with certain attributes like for a filled rectangle.
    • +
    • com::sun::star::accessibility::AccessibleStateType::RESIZABLE + is always set.
    • +
    • com::sun::star::accessibility::AccessibleStateType::SELECTABLE + is always set.
    • +
    • com::sun::star::accessibility::AccessibleStateType::SELECTED + is set according to + whether the shape is currently selected.
    • +
    • com::sun::star::accessibility::AccessibleStateType::SHOWING + is always set.
    • +
    • com::sun::star::accessibility::AccessibleStateType::VISIBLE + is always set.
    • +
    +
  • Locale: The shape returns the locale of its parent.
  • +
  • Property change listeners: Property change listeners that are + registered with a shape are informed of the usual events.
  • +
+ */ + interface ::com::sun::star::accessibility::XAccessibleContext; + + /** Give access to the graphical representation of a shape. + +

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; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3