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 --- .../star/drawing/AccessibleDrawDocumentView.idl | 127 +++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100644 offapi/com/sun/star/drawing/AccessibleDrawDocumentView.idl (limited to 'offapi/com/sun/star/drawing/AccessibleDrawDocumentView.idl') diff --git a/offapi/com/sun/star/drawing/AccessibleDrawDocumentView.idl b/offapi/com/sun/star/drawing/AccessibleDrawDocumentView.idl new file mode 100644 index 000000000..9dcf86314 --- /dev/null +++ b/offapi/com/sun/star/drawing/AccessibleDrawDocumentView.idl @@ -0,0 +1,127 @@ +/* -*- 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_AccessibleDrawDocumentView_idl__ +#define __com_sun_star_drawing_AccessibleDrawDocumentView_idl__ + +#include +#include +#include + +module com { module sun { module star { module drawing { + +/** The AccessibleDrawDocumentView service is implemented by + views of Draw and Impress documents. + +

An object that implements the AccessibleDrawDocumentView + service provides information about the view of a Draw or Impress + document in one of the various view modes. With its children it gives + access to the current page and the shapes on that page.

+ +

This service gives a simplified view on the underlying document. It + tries both to keep the structure of the accessibility representation + tree as simple as possible and provide as much relevant information as + possible. This has the following consequences: +

    +
  1. Only the current draw page and only the visible shapes are + accessible. To switch to another page or to access shapes that lie + outside the currently visible area, the user has to issue these requests + manually or programmatically through the usual channels, e.g. pressing + keys or selecting menu entries.
  2. +
  3. The hierarchy exposed through the + ::com::sun::star::accessibility::XAccessibleContext + interface does not necessarily correspond directly to the underlying + draw page structure. Internal nodes in this hierarchy are introduced + by group shapes, 3D scenes, and OLE objects.
  4. +
  5. The view modes editing view, outline view, slides view, notes view, + handout view, and presentation view are not exposed explicitly. + However, if there happens to be a view mode change which results in a + rearrangement of the visible shapes, the user gets notified of this.
  6. +

+ + @since OOo 1.1.2 +*/ +service AccessibleDrawDocumentView +{ + /** Base interface for being accessible. It gives access to the + ::com::sun::star::accessibility::XAccessibleContext + interface. + */ + interface ::com::sun::star::accessibility::XAccessible; + + /** Provide access to the view of a document. + +

You can access the following information: +

    +
  • Role: The object's role might be + com::sun::star::accessibility::AccessibleRole::DOCUMENT or + com::sun::star::accessibility::AccessibleRole::DOCUMENT_PRESENTATION + , the former for a Draw and the latter for an Impress document.
  • +
  • Name: Its name is "AccessibleDrawDocumentView", + "AccessibleOutlineView", or "slide window".
  • +
  • Description: The description is "Draw Document", "Accessible + Draw Document Outline", or "slide window".
  • +
  • Children: The shapes of the current draw page that are currently + visible are direct and indirect children of (an object + implementing) + this service. Group shapes, 3D scenes, and OLE objects + introduce further levels into the hierarchy. If the visibility + of shapes changes--due to + scrolling, switching the current draw page, or changing the view + mode--the appropriate listeners are called and the user gets + informed of this.
  • +
  • Parent: The parent will usually be the window that contains the + draw document view. It has to be set via implementation dependent + ways.
  • +
  • Relations: Relations are set and modified from the outside.
  • +
  • States: com::sun::star::accessibility::AccessibleStateType::DEFUNC + is set if a document view + becomes obsolete like when the window, which displays the view, + is closed. Otherwise the states + com::sun::star::accessibility::AccessibleStateType::ENABLED, + com::sun::star::accessibility::AccessibleStateType::SHOWING, + com::sun::star::accessibility::AccessibleStateType::VISIBLE, + com::sun::star::accessibility::AccessibleStateType::FOCUSABLE, + and + com::sun::star::accessibility::AccessibleStateType::SELECTABLE + are always set.
  • +
  • Locale: Is obtained from the parent and returned unchanged.
  • +

+ */ + interface ::com::sun::star::accessibility::XAccessibleContext; + + /** Provide access to a draw document's graphical representation. + +

The main purpose of this interface is to provide a bounding box + of the currently visible area and to let the user find children + (i.e. shapes) that cover a given test point. The more interesting + part of the graphical representation of a draw page lies in its + children. See the AccessibleShape service for more + information about shapes.

+ + @see AccessibleShape + */ + interface ::com::sun::star::accessibility::XAccessibleComponent; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3