diff options
Diffstat (limited to 'offapi/com/sun/star/accessibility/XAccessibleSelection.idl')
-rw-r--r-- | offapi/com/sun/star/accessibility/XAccessibleSelection.idl | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/offapi/com/sun/star/accessibility/XAccessibleSelection.idl b/offapi/com/sun/star/accessibility/XAccessibleSelection.idl new file mode 100644 index 000000000..cc10cca44 --- /dev/null +++ b/offapi/com/sun/star/accessibility/XAccessibleSelection.idl @@ -0,0 +1,154 @@ +/* -*- 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 <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/lang/IndexOutOfBoundsException.idl> + +module com { module sun { module star { module accessibility { + + interface XAccessible; + +/** Implement this interface to represent a selection of accessible objects. + + <p>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.</p> + + <p>The XAccessibleSelection interface has to be implemented + in conjunction with the XAccessibleContext interface that + provides the children on which the first operates.</p> + + <p>It depends on the class implementing this interface, whether it + supports single or multi selection.</p> + + @since OOo 1.1.2 +*/ +interface XAccessibleSelection : ::com::sun::star::uno::XInterface +{ + /** Selects the specified Accessible child of the + object. + + <p>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).</p> + + @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. + + <p>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.</p> + */ + void selectAllAccessibleChildren (); + + /** Returns the number of Accessible children that are currently + selected. + + <p>This number specifies the valid interval of indices that can be + used as arguments for the methods + XAccessibleSelection::getSelectedChild() and + XAccessibleSelection::deselectSelectedChild().</p> + + @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: */ |