1*cdf0e10cSrcweir/************************************************************************* 2*cdf0e10cSrcweir * 3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*cdf0e10cSrcweir * 5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates. 6*cdf0e10cSrcweir * 7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite 8*cdf0e10cSrcweir * 9*cdf0e10cSrcweir * This file is part of OpenOffice.org. 10*cdf0e10cSrcweir * 11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify 12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3 13*cdf0e10cSrcweir * only, as published by the Free Software Foundation. 14*cdf0e10cSrcweir * 15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful, 16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details 19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code). 20*cdf0e10cSrcweir * 21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License 22*cdf0e10cSrcweir * version 3 along with OpenOffice.org. If not, see 23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html> 24*cdf0e10cSrcweir * for a copy of the LGPLv3 License. 25*cdf0e10cSrcweir * 26*cdf0e10cSrcweir ************************************************************************/ 27*cdf0e10cSrcweir 28*cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleAction_idl__ 29*cdf0e10cSrcweir#define __com_sun_star_accessibility_XAccessibleAction_idl__ 30*cdf0e10cSrcweir 31*cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__ 32*cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl> 33*cdf0e10cSrcweir#endif 34*cdf0e10cSrcweir#ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__ 35*cdf0e10cSrcweir#include <com/sun/star/lang/IndexOutOfBoundsException.idl> 36*cdf0e10cSrcweir#endif 37*cdf0e10cSrcweir 38*cdf0e10cSrcweirmodule com { module sun { module star { module accessibility { 39*cdf0e10cSrcweir 40*cdf0e10cSrcweir published interface XAccessibleKeyBinding; 41*cdf0e10cSrcweir 42*cdf0e10cSrcweir/** Implement this interface to give access to actions that can be executed 43*cdf0e10cSrcweir for accessible objects. 44*cdf0e10cSrcweir 45*cdf0e10cSrcweir <p>Every accessible object that can be manipulated beyond its methods 46*cdf0e10cSrcweir exported over the accessibility API should support this interface to 47*cdf0e10cSrcweir expose all actions that it can perform. Each action can be performed or 48*cdf0e10cSrcweir be queried for a description or associated key bindings.</p> 49*cdf0e10cSrcweir 50*cdf0e10cSrcweir @since OOo 1.1.2 51*cdf0e10cSrcweir*/ 52*cdf0e10cSrcweirpublished interface XAccessibleAction : ::com::sun::star::uno::XInterface 53*cdf0e10cSrcweir{ 54*cdf0e10cSrcweir /** Returns the number of accessible actions available in this object. 55*cdf0e10cSrcweir 56*cdf0e10cSrcweir <p>If there are more than one, the first one is considered the 57*cdf0e10cSrcweir "default" action of the object.</p> 58*cdf0e10cSrcweir 59*cdf0e10cSrcweir @return 60*cdf0e10cSrcweir The returned value of the number of actions is zero if there are 61*cdf0e10cSrcweir no actions. 62*cdf0e10cSrcweir */ 63*cdf0e10cSrcweir long getAccessibleActionCount (); 64*cdf0e10cSrcweir 65*cdf0e10cSrcweir /** Perform the specified Action on the object. 66*cdf0e10cSrcweir 67*cdf0e10cSrcweir @param nIndex 68*cdf0e10cSrcweir This index specifies the action to perform. If it lies outside 69*cdf0e10cSrcweir the valid range <FALSE/> is returned and no action is performed. 70*cdf0e10cSrcweir @return 71*cdf0e10cSrcweir Returns <TRUE/> if the action was successfully performed. If 72*cdf0e10cSrcweir the action could not be performed successfully <FALSE/> is 73*cdf0e10cSrcweir returned. 74*cdf0e10cSrcweir 75*cdf0e10cSrcweir @throws IndexOutOfBoundsException 76*cdf0e10cSrcweir If no action with the given index exists then an 77*cdf0e10cSrcweir <type scope="::com::sun::star::lang">IndexOutOfBoundsException</type> 78*cdf0e10cSrcweir exception is thrown. 79*cdf0e10cSrcweir */ 80*cdf0e10cSrcweir boolean doAccessibleAction ([in] long nIndex) 81*cdf0e10cSrcweir raises (::com::sun::star::lang::IndexOutOfBoundsException); 82*cdf0e10cSrcweir 83*cdf0e10cSrcweir /** Returns a description of the specified action of the object. 84*cdf0e10cSrcweir 85*cdf0e10cSrcweir @param nIndex 86*cdf0e10cSrcweir This index specifies the action of which to return a 87*cdf0e10cSrcweir description. If it lies outside the valid range an empty string 88*cdf0e10cSrcweir is returned. 89*cdf0e10cSrcweir 90*cdf0e10cSrcweir @return 91*cdf0e10cSrcweir The returned value is a localized string of the specified action. 92*cdf0e10cSrcweir 93*cdf0e10cSrcweir @throws IndexOutOfBoundsException 94*cdf0e10cSrcweir If the given index lies not in the valid range then an 95*cdf0e10cSrcweir <type scope="::com::sun::star::lang">IndexOutOfBoundsException</type> 96*cdf0e10cSrcweir exception is thrown. 97*cdf0e10cSrcweir */ 98*cdf0e10cSrcweir string getAccessibleActionDescription ([in] long nIndex) 99*cdf0e10cSrcweir raises (::com::sun::star::lang::IndexOutOfBoundsException); 100*cdf0e10cSrcweir 101*cdf0e10cSrcweir /** Returns a key binding object, if there is one, associated with the 102*cdf0e10cSrcweir specified action. Note that there can be several alternative key 103*cdf0e10cSrcweir bindings for an action. See <type>XAccessibleKeyBinding</type> for 104*cdf0e10cSrcweir more information about how key bindings are represented. 105*cdf0e10cSrcweir 106*cdf0e10cSrcweir @param nIndex 107*cdf0e10cSrcweir This index specifies the action of which to return the key 108*cdf0e10cSrcweir binding. 109*cdf0e10cSrcweir 110*cdf0e10cSrcweir @return 111*cdf0e10cSrcweir The returned object describes a set of key bindings associated 112*cdf0e10cSrcweir with the specified action. 113*cdf0e10cSrcweir 114*cdf0e10cSrcweir @throws IndexOutOfBoundsException 115*cdf0e10cSrcweir if the given index is not valid. 116*cdf0e10cSrcweir */ 117*cdf0e10cSrcweir XAccessibleKeyBinding getAccessibleActionKeyBinding ([in] long nIndex) 118*cdf0e10cSrcweir raises (::com::sun::star::lang::IndexOutOfBoundsException); 119*cdf0e10cSrcweir}; 120*cdf0e10cSrcweir 121*cdf0e10cSrcweir}; }; }; }; 122*cdf0e10cSrcweir 123*cdf0e10cSrcweir#endif 124