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/accessibility/XAccessibleSelection.idl | 153 +++++++++++++++++++++ 1 file changed, 153 insertions(+) create mode 100644 offapi/com/sun/star/accessibility/XAccessibleSelection.idl (limited to 'offapi/com/sun/star/accessibility/XAccessibleSelection.idl') diff --git a/offapi/com/sun/star/accessibility/XAccessibleSelection.idl b/offapi/com/sun/star/accessibility/XAccessibleSelection.idl new file mode 100644 index 000000000..0d9d18820 --- /dev/null +++ b/offapi/com/sun/star/accessibility/XAccessibleSelection.idl @@ -0,0 +1,153 @@ +/* -*- 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_accessibility_XAccessibleSelection_idl__ +#define __com_sun_star_accessibility_XAccessibleSelection_idl__ + +#include +#include + +module com { module sun { module star { module accessibility { + + interface XAccessible; + +/** Implement this interface to represent a selection of accessible objects. + +

This interface is the standard mechanism to obtain and modify the + currently selected children. Every object that has children that can be + selected should support this interface.

+ +

The XAccessibleSelection interface has to be implemented + in conjunction with the XAccessibleContext interface that + provides the children on which the first operates.

+ +

It depends on the class implementing this interface, whether it + supports single or multi selection.

+ + @since OOo 1.1.2 +*/ +interface XAccessibleSelection : ::com::sun::star::uno::XInterface +{ + /** Selects the specified Accessible child of the + object. + +

Depending on the implementing class the child is added to the + current set a selected children (multi selection) or a previously + selected child is deselected first (single selection).

+ + @param nChildIndex + Index of the child which is to add to the selection. This index + refers to all the children of this object. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the given index does not lie in the valid range of 0 up to + the result of + XAccessibleContext::getAccessibleChildCount()-1. + */ + void selectAccessibleChild ([in] long nChildIndex) + raises (::com::sun::star::lang::IndexOutOfBoundsException); + + /** Determines if the specified child of this object is selected. + + @param nChildIndex + Index of the child for which to detect whether it is selected. + This index refers to all the children of this object. + + @return + Returns `TRUE` if the specified child is selected and `FALSE` + if it is not selected. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the given index does not lie in the valid range of 0 up to + the result of + XAccessibleContext::getAccessibleChildCount()-1. + */ + boolean isAccessibleChildSelected ([in] long nChildIndex) + raises (::com::sun::star::lang::IndexOutOfBoundsException); + + /** Clears the selection, so that no children of the + object are selected. + */ + void clearAccessibleSelection (); + + /** Select all children. + +

Causes every child of the object to be selected if the object + supports multiple selections. If multiple selection is not + supported then the first child, if it exists, is selected and all + other children are deselected.

+ */ + void selectAllAccessibleChildren (); + + /** Returns the number of Accessible children that are currently + selected. + +

This number specifies the valid interval of indices that can be + used as arguments for the method + XAccessibleSelection::getSelectedAccessibleChild().

+ + @return + Returns the number of selected children of this object or 0 if + no child is selected. + */ + long getSelectedAccessibleChildCount (); + + /** Returns the specified selected Accessible child. + + @param nSelectedChildIndex + This index refers only to the selected children, not to all the + children of this object. Even if all children are selected, the + indices enumerating the selected children need not be the same + as those enumerating all children. If only single selection is + supported the only valid value is 0. + + @return + If the index is valid, i.e. not negative and lower than the + number of selected children, then a valid reference to the + corresponding XAccessible child is returned. + Otherwise an exception is thrown. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the given index does not lie in the valid range of 0 up to + the result of + XAccessibleRelationSet::getAccessibleChildCount()-1. + */ + XAccessible getSelectedAccessibleChild ([in] long nSelectedChildIndex) + raises (::com::sun::star::lang::IndexOutOfBoundsException); + + /** Removes the specified child from the set of this object's + selected children. Note that not all applications support + deselection: calls to this method may be silently ignored. + + @param nChildIndex + This index refers to all children not just the selected ones. + If the specified child is not selected or it can not be + deselected for any reason then the method call is silently + ignored. + @throws ::com::sun::star::lang::IndexOutOfBoundsException + if the given index does not lie in the valid range of 0 up to, + but not including, the result of + XAccessibleContext::getAccessibleChildCount(). + */ + void deselectAccessibleChild ([in] long nChildIndex) + raises (::com::sun::star::lang::IndexOutOfBoundsException); +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit v1.2.3