1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
29 #ifndef __com_sun_star_accessibility_XAccessibleAction_idl__
30 #define __com_sun_star_accessibility_XAccessibleAction_idl__
32 #include
<com
/sun
/star
/uno
/XInterface.idl
>
33 #include
<com
/sun
/star
/lang
/IndexOutOfBoundsException.idl
>
35 module com
{ module sun
{ module star
{ module accessibility
{
37 published
interface XAccessibleKeyBinding
;
39 /** Implement this interface to give access to actions that can be executed
40 for accessible objects.
42 <p>Every accessible object that can be manipulated beyond its methods
43 exported over the accessibility API should support this interface to
44 expose all actions that it can perform. Each action can be performed or
45 be queried for a description or associated key bindings.</p>
49 published
interface XAccessibleAction
: ::com
::sun
::star
::uno
::XInterface
51 /** Returns the number of accessible actions available in this object.
53 <p>If there are more than one, the first one is considered the
54 "default" action of the object.</p>
57 The returned value of the number of actions is zero if there are
60 long getAccessibleActionCount
();
62 /** Perform the specified Action on the object.
65 This index specifies the action to perform. If it lies outside
66 the valid range <FALSE/> is returned and no action is performed.
68 Returns <TRUE/> if the action was successfully performed. If
69 the action could not be performed successfully <FALSE/> is
72 @throws IndexOutOfBoundsException
73 If no action with the given index exists then an
74 <type scope="::com::sun::star::lang">IndexOutOfBoundsException</type>
77 boolean doAccessibleAction
([in] long nIndex
)
78 raises
(::com
::sun
::star
::lang
::IndexOutOfBoundsException
);
80 /** Returns a description of the specified action of the object.
83 This index specifies the action of which to return a
84 description. If it lies outside the valid range an empty string
88 The returned value is a localized string of the specified action.
90 @throws IndexOutOfBoundsException
91 If the given index lies not in the valid range then an
92 <type scope="::com::sun::star::lang">IndexOutOfBoundsException</type>
95 string getAccessibleActionDescription
([in] long nIndex
)
96 raises
(::com
::sun
::star
::lang
::IndexOutOfBoundsException
);
98 /** Returns a key binding object, if there is one, associated with the
99 specified action. Note that there can be several alternative key
100 bindings for an action. See <type>XAccessibleKeyBinding</type> for
101 more information about how key bindings are represented.
104 This index specifies the action of which to return the key
108 The returned object describes a set of key bindings associated
109 with the specified action.
111 @throws IndexOutOfBoundsException
112 if the given index is not valid.
114 XAccessibleKeyBinding getAccessibleActionKeyBinding
([in] long nIndex
)
115 raises
(::com
::sun
::star
::lang
::IndexOutOfBoundsException
);
122 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */