2 * AT-SPI - Assistive Technology Service Provider Interface
3 * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
5 * Copyright 2001 Sun Microsystems, Inc.
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Library General Public License for more details.
17 * You should have received a copy of the GNU Library General Public
18 * License along with this library; if not, write to the
19 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20 * Boston, MA 02111-1307, USA.
23 module Accessibility {
25 * An interface through which a user-actionable user interface
26 * component can be manipulated. Components which react to mouse or
27 * keyboard input from the user, (with the exception of pure text entry
28 * fields with no other function), should implement this interface.
29 * Typical actions include "click", "press", "release" (for instance for
30 * buttons), "menu" (for objects which have context menus invokable from
31 * mouse or keyboard), "open" for icons representing files folders, and others.
33 interface Action : Bonobo::Unknown {
36 * nActions: a \c long containing the number of actions this object supports.
39 readonly attribute long nActions;
43 * @param index: the index of the action
44 * for which a description is desired.
46 * Get the description of the specified action. The description of an action
47 * may provide information about the result of action invocation, unlike the
51 * @returns: a \c string containing the description of the specified action.
54 string getDescription (in long index);
58 * @param index: the index of the action
59 * whose name is requested.
61 * Get the name of the specified action. Action names generally describe
62 * the user action, i.e. "click" or "press", rather then the result of
63 * invoking the action.
65 * @returns: a \c string containing the name of the specified action.
68 string getName (in long index);
72 * @param index: the 0-based index of the action to perform.
74 * Causes the object to perform the specified action.
76 * @returns: a \c boolean indicating success or failure.
79 boolean doAction (in long index);
83 * @param index: the 0-based index of the action
84 * for which a key binding is requested.
86 * Get the key binding associated with a specific action.
88 * @returns: a \c string containing the key binding for the specified action,
89 * or an empty string ("") if none exists.
91 string getKeyBinding (in long index);
98 * placeholders for future expansion.
100 void unImplemented ();
101 void unImplemented2 ();
102 void unImplemented3 ();
103 void unImplemented4 ();