/* * AT-SPI - Assistive Technology Service Provider Interface * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap) * * Copyright 2001 Sun Microsystems Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ #ifndef _ACCESSIBILITY_STATE_IDL #define _ACCESSIBILITY_STATE_IDL module Accessibility { enum StateType { STATE_INVALID, /* Indicates a window is currently the active window */ STATE_ACTIVE, /* Indicates that the object is armed */ STATE_ARMED, /* Indicates the current object is busy */ STATE_BUSY, /* Indicates this object is currently checked */ STATE_CHECKED, /* Indicates this object is collapsed */ STATE_COLLAPSED, /* Indicates the user can change the contents of this object */ STATE_EDITABLE, /* Indicates this object allows progressive disclosure of its children */ STATE_EXPANDABLE, /* Indicates this object its expanded */ STATE_EXPANDED, /* * Indicates this object can accept keyboard focus, which means all * events resulting from typing on the keyboard will normally be passed * to it when it has focus */ STATE_FOCUSABLE, /* Indicates this object currently has the keyboard focus */ STATE_FOCUSED, /* Indicates that the object has an associated tooltip */ STATE_HAS_TOOLTIP, /* Indicates the orientation of thsi object is horizontal */ STATE_HORIZONTAL, /* Indicates this object is minimized and is represented only by an icon */ STATE_ICONIFIED, /* * Indicates something must be done with this object before the user can * interact with an object in a different window. */ STATE_MODAL, /* Indicates this (text) object can contain multiple lines of text */ STATE_MULTI_LINE, /* * Indicates this object allows more than one of its children to be * selected at the same time */ STATE_MULTISELECTABLE, /* Indicates this object paints every pixel within its rectangular region. */ STATE_OPAQUE, /* Indicates this object is currently pressed */ STATE_PRESSED, /* Indicates the size of this object is not fixed */ STATE_RESIZABLE, /* * Indicates this object is the child of an object that allows its * children to be selected and that this child is one of those children * that can be selected. */ STATE_SELECTABLE, /* * Indicates this object is the child of an object that allows its * children to be selected and that this child is one of those children * that has been selected. */ STATE_SELECTED, /* Indicates this object is sensitive */ STATE_SENSITIVE, /* * Indicates this object, the object's parent, the object's parent's * parent, and so on, are all visible */ STATE_SHOWING, /* Indicates this (text) object can contain only a single line of text */ STATE_SINGLE_LINE, /* Indicates this object is transient */ STATE_TRANSIENT, /* Indicates the orientation of this object is vertical */ STATE_VERTICAL, /* Indicates this object is visible */ STATE_VISIBLE, STATE_LAST_DEFINED }; interface StateSet { boolean contains (in StateType state); void add (in StateType state); void remove (in StateType state); boolean equals (in StateSet stateSet); /* returns a 'difference set' */ StateSet compare (in StateSet compareState); boolean isEmpty (); }; }; #endif