mirror of git://gcc.gnu.org/git/gcc.git
				
				
				
			
		
			
				
	
	
		
			350 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Java
		
	
	
	
			
		
		
	
	
			350 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Java
		
	
	
	
/* AccessibleState.java -- a state of an accessible object
 | 
						|
   Copyright (C) 2002, 2005 Free Software Foundation
 | 
						|
 | 
						|
This file is part of GNU Classpath.
 | 
						|
 | 
						|
GNU Classpath is free software; you can redistribute it and/or modify
 | 
						|
it under the terms of the GNU General Public License as published by
 | 
						|
the Free Software Foundation; either version 2, or (at your option)
 | 
						|
any later version.
 | 
						|
 | 
						|
GNU Classpath 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
 | 
						|
General Public License for more details.
 | 
						|
 | 
						|
You should have received a copy of the GNU General Public License
 | 
						|
along with GNU Classpath; see the file COPYING.  If not, write to the
 | 
						|
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 | 
						|
02110-1301 USA.
 | 
						|
 | 
						|
Linking this library statically or dynamically with other modules is
 | 
						|
making a combined work based on this library.  Thus, the terms and
 | 
						|
conditions of the GNU General Public License cover the whole
 | 
						|
combination.
 | 
						|
 | 
						|
As a special exception, the copyright holders of this library give you
 | 
						|
permission to link this library with independent modules to produce an
 | 
						|
executable, regardless of the license terms of these independent
 | 
						|
modules, and to copy and distribute the resulting executable under
 | 
						|
terms of your choice, provided that you also meet, for each linked
 | 
						|
independent module, the terms and conditions of the license of that
 | 
						|
module.  An independent module is a module which is not derived from
 | 
						|
or based on this library.  If you modify this library, you may extend
 | 
						|
this exception to your version of the library, but you are not
 | 
						|
obligated to do so.  If you do not wish to do so, delete this
 | 
						|
exception statement from your version. */
 | 
						|
 | 
						|
package javax.accessibility;
 | 
						|
 | 
						|
import java.awt.Dimension;
 | 
						|
import java.util.Locale;
 | 
						|
 | 
						|
/**
 | 
						|
 * A state portion of an accessible object. A combination of states represent
 | 
						|
 * the entire object state, in an AccessibleStateSet. For example, this could
 | 
						|
 * be "active" or "selected". This strongly typed "enumeration" supports
 | 
						|
 * localized strings. If the constants of this class are not adequate, new
 | 
						|
 * ones may be added in a similar matter, while avoiding a public constructor.
 | 
						|
 *
 | 
						|
 * @author Eric Blake (ebb9@email.byu.edu)
 | 
						|
 * @since 1.2
 | 
						|
 * @status updated to 1.4
 | 
						|
 */
 | 
						|
public class AccessibleState extends AccessibleBundle
 | 
						|
{
 | 
						|
  /**
 | 
						|
   * Indicates an active window, as well as an active child in a list or other
 | 
						|
   * collection.
 | 
						|
   *
 | 
						|
   * @see AccessibleRole#WINDOW
 | 
						|
   * @see AccessibleRole#FRAME
 | 
						|
   * @see AccessibleRole#DIALOG
 | 
						|
   */
 | 
						|
  public static final AccessibleState ACTIVE
 | 
						|
    = new AccessibleState("active");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates a pushed button, usually when the mouse has been pressed but
 | 
						|
   * not released.
 | 
						|
   *
 | 
						|
   * @see AccessibleRole#PUSH_BUTTON
 | 
						|
   */
 | 
						|
  public static final AccessibleState PRESSED
 | 
						|
    = new AccessibleState("pressed");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates an armed object, usually a button which has been pushed and
 | 
						|
   * the mouse has not left the button area.
 | 
						|
   *
 | 
						|
   * @see AccessibleRole#PUSH_BUTTON
 | 
						|
   */
 | 
						|
  public static final AccessibleState ARMED
 | 
						|
    = new AccessibleState("armed");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates an object is busy, such as a slider, scroll bar, or progress
 | 
						|
   * bar in transition.
 | 
						|
   *
 | 
						|
   * @see AccessibleRole#PROGRESS_BAR
 | 
						|
   * @see AccessibleRole#SCROLL_BAR
 | 
						|
   * @see AccessibleRole#SLIDER
 | 
						|
   */
 | 
						|
  public static final AccessibleState BUSY
 | 
						|
    = new AccessibleState("busy");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates an object is checked.
 | 
						|
   *
 | 
						|
   * @see AccessibleRole#TOGGLE_BUTTON
 | 
						|
   * @see AccessibleRole#RADIO_BUTTON
 | 
						|
   * @see AccessibleRole#CHECK_BOX
 | 
						|
   */
 | 
						|
  public static final AccessibleState CHECKED
 | 
						|
    = new AccessibleState("checked");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates the user can edit the component contents. This is usually for
 | 
						|
   * text, as other objects like scroll bars are automatically editable.
 | 
						|
   *
 | 
						|
   * @see #ENABLED
 | 
						|
   */
 | 
						|
  public static final AccessibleState EDITABLE
 | 
						|
    = new AccessibleState("editable");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates the object allows progressive disclosure of its children,
 | 
						|
   * usually in a collapsible tree or other hierachical object.
 | 
						|
   *
 | 
						|
   * @see #EXPANDED
 | 
						|
   * @see #COLLAPSED
 | 
						|
   * @see AccessibleRole#TREE
 | 
						|
   */
 | 
						|
  public static final AccessibleState EXPANDABLE
 | 
						|
    = new AccessibleState("expandable");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that the object is collapsed, usually in a tree.
 | 
						|
   *
 | 
						|
   * @see #EXPANDABLE
 | 
						|
   * @see #EXPANDED
 | 
						|
   * @see AccessibleRole#TREE
 | 
						|
   */
 | 
						|
  public static final AccessibleState COLLAPSED
 | 
						|
    = new AccessibleState("collapsed");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that the object is expanded, usually in a tree.
 | 
						|
   *
 | 
						|
   * @see #EXPANDABLE
 | 
						|
   * @see #COLLAPSED
 | 
						|
   * @see AccessibleRole#TREE
 | 
						|
   */
 | 
						|
  public static final AccessibleState EXPANDED
 | 
						|
    = new AccessibleState("expanded");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that an object is enabled. In the absence of this state,
 | 
						|
   * graphics are often grayed out, and cannot be manipulated.
 | 
						|
   */
 | 
						|
  public static final AccessibleState ENABLED
 | 
						|
    = new AccessibleState("enabled");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that an object can accept focus, which means it will process
 | 
						|
   * keyboard events when focused.
 | 
						|
   *
 | 
						|
   * @see #FOCUSED
 | 
						|
   */
 | 
						|
  public static final AccessibleState FOCUSABLE
 | 
						|
    = new AccessibleState("focusable");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that an object has keyboard focus.
 | 
						|
   *
 | 
						|
   * @see #FOCUSABLE
 | 
						|
   */
 | 
						|
  public static final AccessibleState FOCUSED
 | 
						|
    = new AccessibleState("focused");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that an object is minimized to an icon.
 | 
						|
   *
 | 
						|
   * @see AccessibleRole#FRAME
 | 
						|
   * @see AccessibleRole#INTERNAL_FRAME
 | 
						|
   */
 | 
						|
  public static final AccessibleState ICONIFIED
 | 
						|
    = new AccessibleState("iconified");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that the state of this particular object is
 | 
						|
   * indeterminate.  This commonly occurs when an object is incapable
 | 
						|
   * of representing the state by a single value.
 | 
						|
   *
 | 
						|
   * @since 1.5
 | 
						|
   */
 | 
						|
  public static final AccessibleState INDETERMINATE
 | 
						|
    = new AccessibleState("indeterminate");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this particular object manages a number of
 | 
						|
   * subcomponents.  This is a common property of structures such as
 | 
						|
   * trees and tables, which have a number of sub-elements such as
 | 
						|
   * rows and columns.  The subcomponents should be left to the
 | 
						|
   * object, and not managed by the application.
 | 
						|
   *
 | 
						|
   * @since 1.5
 | 
						|
   */
 | 
						|
  public static final AccessibleState MANAGES_DESCENDANTS
 | 
						|
    = new AccessibleState("manages descendants");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that something must be done in the current object before
 | 
						|
   * interaction is allowed on other windows, usually for dialogs.
 | 
						|
   *
 | 
						|
   * @see AccessibleRole#DIALOG
 | 
						|
   */
 | 
						|
  public static final AccessibleState MODAL
 | 
						|
    = new AccessibleState("modal");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that all pixels in the object are painted. If this state is not
 | 
						|
   * present, then the object has some degree of transparency, letting lower
 | 
						|
   * panes show through.
 | 
						|
   *
 | 
						|
   * @see Accessible#getAccessibleContext()
 | 
						|
   * @see AccessibleContext#getAccessibleComponent()
 | 
						|
   * @see AccessibleComponent#getBounds()
 | 
						|
   */
 | 
						|
  public static final AccessibleState OPAQUE
 | 
						|
    = new AccessibleState("opaque");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates the size of this object is not fixed.
 | 
						|
   *
 | 
						|
   * @see Accessible#getAccessibleContext()
 | 
						|
   * @see AccessibleContext#getAccessibleComponent()
 | 
						|
   * @see AccessibleComponent#getSize()
 | 
						|
   * @see AccessibleComponent#setSize(Dimension)
 | 
						|
   */
 | 
						|
  public static final AccessibleState RESIZABLE
 | 
						|
    = new AccessibleState("resizable");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that multiple children can be selected at once.
 | 
						|
   *
 | 
						|
   * @see Accessible#getAccessibleContext()
 | 
						|
   * @see AccessibleContext#getAccessibleSelection()
 | 
						|
   * @see AccessibleSelection
 | 
						|
   */
 | 
						|
  public static final AccessibleState MULTISELECTABLE
 | 
						|
    = new AccessibleState("multiselectable");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this child is one which can be selected from its parent.
 | 
						|
   *
 | 
						|
   * @see #SELECTED
 | 
						|
   * @see Accessible#getAccessibleContext()
 | 
						|
   * @see AccessibleContext#getAccessibleSelection()
 | 
						|
   * @see AccessibleSelection
 | 
						|
   */
 | 
						|
  public static final AccessibleState SELECTABLE
 | 
						|
    = new AccessibleState("selectable");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this child has been selected from its parent.
 | 
						|
   *
 | 
						|
   * @see #SELECTABLE
 | 
						|
   * @see Accessible#getAccessibleContext()
 | 
						|
   * @see AccessibleContext#getAccessibleSelection()
 | 
						|
   * @see AccessibleSelection
 | 
						|
   */
 | 
						|
  public static final AccessibleState SELECTED
 | 
						|
    = new AccessibleState("selected");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this object and all its parents are visible, so that it
 | 
						|
   * is on the screen. However, something opaque may be on top of it.
 | 
						|
   *
 | 
						|
   * @see #VISIBLE
 | 
						|
   */
 | 
						|
  public static final AccessibleState SHOWING
 | 
						|
    = new AccessibleState("showing");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this particular object is truncated when displayed
 | 
						|
   * visually.
 | 
						|
   *
 | 
						|
   * @since 1.5
 | 
						|
   */
 | 
						|
  public static final AccessibleState TRUNCATED
 | 
						|
    = new AccessibleState("truncated");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this object intends to be visible. However, if its
 | 
						|
   * parent is invisible, this object is as well.
 | 
						|
   *
 | 
						|
   * @see #SHOWING
 | 
						|
   */
 | 
						|
  public static final AccessibleState VISIBLE
 | 
						|
    = new AccessibleState("visible");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that an object has vertical orientation.
 | 
						|
   *
 | 
						|
   * @see #HORIZONTAL
 | 
						|
   * @see AccessibleRole#SCROLL_BAR
 | 
						|
   * @see AccessibleRole#SLIDER
 | 
						|
   * @see AccessibleRole#PROGRESS_BAR
 | 
						|
   */
 | 
						|
  public static final AccessibleState VERTICAL
 | 
						|
    = new AccessibleState("vertical");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that an object has horizontal orientation.
 | 
						|
   *
 | 
						|
   * @see #VERTICAL
 | 
						|
   * @see AccessibleRole#SCROLL_BAR
 | 
						|
   * @see AccessibleRole#SLIDER
 | 
						|
   * @see AccessibleRole#PROGRESS_BAR
 | 
						|
   */
 | 
						|
  public static final AccessibleState HORIZONTAL
 | 
						|
    = new AccessibleState("horizontal");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this text object can only hold a single line.
 | 
						|
   *
 | 
						|
   * @see #MULTI_LINE
 | 
						|
   */
 | 
						|
  public static final AccessibleState SINGLE_LINE
 | 
						|
    = new AccessibleState("single line");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this text object can hold multiple lines.
 | 
						|
   *
 | 
						|
   * @see #SINGLE_LINE
 | 
						|
   */
 | 
						|
  public static final AccessibleState MULTI_LINE
 | 
						|
    = new AccessibleState("multiple line");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Indicates that this object is transient. This means the object is
 | 
						|
   * generated for method queries, but will never generate events, because
 | 
						|
   * its container (such as a tree, list, or table) does all the work.
 | 
						|
   */
 | 
						|
  public static final AccessibleState TRANSIENT
 | 
						|
    = new AccessibleState("transient");
 | 
						|
 | 
						|
  /**
 | 
						|
   * Create a new constant with a locale independent key. Follow the example,
 | 
						|
   * keep the constructor private and make public constants instead.
 | 
						|
   *
 | 
						|
   * @param key the name of the state
 | 
						|
   * @see #toDisplayString(String, Locale)
 | 
						|
   */
 | 
						|
  protected AccessibleState(String key)
 | 
						|
  {
 | 
						|
    this.key = key;
 | 
						|
  }
 | 
						|
} // class AccessibleState
 |