Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.swt.accessibility
Class Accessible

    java.lang.Object
      org.eclipse.swt.accessibility.Accessible

public class Accessible
extends Object

Instances of this class provide a bridge between application code and assistive technology clients. Many platforms provide default accessible behavior for most widgets, and this class allows that default behavior to be overridden. Applications can get the default Accessible object for a control by sending it `getAccessible`, and then add an accessible listener to override simple items like the name and help string, or they can add an accessible control listener to override complex items. As a rule of thumb, an application would only want to use the accessible control listener to implement accessibility for a custom control.

Since:
  2.0
See Also:
  `Control.getAccessible()`, `AccessibleListener`, `AccessibleEvent`, `AccessibleControlListener`, `AccessibleControlEvent`

Method Summary
`void` | `addAccessibleControlListener(AccessibleControlListener listener)` Adds the listener to the collection of listeners who will be notifed when an accessible client asks for custom control specific information.
`void` | `addAccessibleListener(AccessibleListener listener)` Adds the listener to the collection of listeners who will be notifed when an accessible client asks for certain strings, such as name, description, help, or keyboard shortcut.
`void` | `addAccessibleTextListener(AccessibleTextListener listener)` Adds the listener to the collection of listeners who will be notifed when an accessible client asks for custom text control specific information.
`Control` | `getControl()` Returns the control for this Accessible object.
`void` | `internal_dispose_Accessible()` Invokes platform specific functionality to dispose an accessible object.
`static Accessible` | `internal_new_Accessible(Control control)` Invokes platform specific functionality to allocate a new accessible object.
`int` | `internal_WM_GETOBJECT(int wParam, int lParam)` Invokes platform specific functionality to handle a window message.
`void` | `removeAccessibleControlListener(AccessibleControlListener listener)` Removes the listener from the collection of listeners who will be notifed when an accessible client asks for custom control specific information.
`void` | `removeAccessibleListener(AccessibleListener listener)` Removes the listener from the collection of listeners who will be notifed when an accessible client asks for certain strings, such as name, description, help, or keyboard shortcut.
`void` | `removeAccessibleTextListener(AccessibleTextListener listener)` Removes the listener from the collection of listeners who will be notifed when an accessible client asks for custom text control specific information.
`void` | `selectionChanged()` Sends a message to accessible clients that the child selection within a custom container control has changed.
`void` | `setFocus(int childID)` Sends a message to accessible clients indicating that the focus has changed within a custom control.
`void` | `textCaretMoved(int index)` Sends a message to accessible clients that the text caret has moved within a custom control.
`void` | `textChanged(int type, int startIndex, int length)` Sends a message to accessible clients that the text within a custom control has changed.
`void` | `textSelectionChanged()` Sends a message to accessible clients that the text selection has changed within a custom control.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### internal_new_Accessible

    public static Accessible internal_new_Accessible(Control control)

  Invokes platform specific functionality to allocate a new accessible object.

  IMPORTANT: This method is not part of the public API for `Accessible`. It is marked public only so that it can be shared within the packages provided by SWT. It is not available on all platforms, and should never be called from application code.

  Parameters:
    `control` - the control to get the accessible object for
  Returns:
    the platform specific accessible object

### addAccessibleListener

    public void addAccessibleListener(AccessibleListener listener)

  Adds the listener to the collection of listeners who will be notifed when an accessible client asks for certain strings, such as name, description, help, or keyboard shortcut. The listener is notified by sending it one of the messages defined in the `AccessibleListener` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for a name, description, help, or keyboard shortcut string
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  See Also:
    `AccessibleListener`, `removeAccessibleListener(org.eclipse.swt.accessibility.AccessibleListener)`

### addAccessibleControlListener

    public void addAccessibleControlListener(AccessibleControlListener listener)

  Adds the listener to the collection of listeners who will be notifed when an accessible client asks for custom control specific information. The listener is notified by sending it one of the messages defined in the `AccessibleControlListener` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for custom control specific information
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  See Also:
    `AccessibleControlListener`, `removeAccessibleControlListener(org.eclipse.swt.accessibility.AccessibleControlListener)`

### addAccessibleTextListener

    public void addAccessibleTextListener(AccessibleTextListener listener)

  Adds the listener to the collection of listeners who will be notifed when an accessible client asks for custom text control specific information. The listener is notified by sending it one of the messages defined in the `AccessibleTextListener` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for custom text control specific information
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  Since:
    3.0
  See Also:
    `AccessibleTextListener`, `removeAccessibleTextListener(org.eclipse.swt.accessibility.AccessibleTextListener)`

### getControl

    public Control getControl()

  Returns the control for this Accessible object.

  Returns:
    the receiver's control
  Since:
    3.0

### internal_dispose_Accessible

    public void internal_dispose_Accessible()

  Invokes platform specific functionality to dispose an accessible object.

  IMPORTANT: This method is not part of the public API for `Accessible`. It is marked public only so that it can be shared within the packages provided by SWT. It is not available on all platforms, and should never be called from application code.

### internal_WM_GETOBJECT

    public int internal_WM_GETOBJECT(int wParam,
                                     int lParam)

  Invokes platform specific functionality to handle a window message.

  IMPORTANT: This method is not part of the public API for `Accessible`. It is marked public only so that it can be shared within the packages provided by SWT. It is not available on all platforms, and should never be called from application code.

### removeAccessibleListener

    public void removeAccessibleListener(AccessibleListener listener)

  Removes the listener from the collection of listeners who will be notifed when an accessible client asks for certain strings, such as name, description, help, or keyboard shortcut.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for a name, description, help, or keyboard shortcut string
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  See Also:
    `AccessibleListener`, `addAccessibleListener(org.eclipse.swt.accessibility.AccessibleListener)`

### removeAccessibleControlListener

    public void removeAccessibleControlListener(AccessibleControlListener listener)

  Removes the listener from the collection of listeners who will be notifed when an accessible client asks for custom control specific information.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for custom control specific information
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  See Also:
    `AccessibleControlListener`, `addAccessibleControlListener(org.eclipse.swt.accessibility.AccessibleControlListener)`

### removeAccessibleTextListener

    public void removeAccessibleTextListener(AccessibleTextListener listener)

  Removes the listener from the collection of listeners who will be notifed when an accessible client asks for custom text control specific information.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for custom text control specific information
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  Since:
    3.0
  See Also:
    `AccessibleTextListener`, `addAccessibleTextListener(org.eclipse.swt.accessibility.AccessibleTextListener)`

### selectionChanged

    public void selectionChanged()

  Sends a message to accessible clients that the child selection within a custom container control has changed.

  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  Since:
    3.0

### setFocus

    public void setFocus(int childID)

  Sends a message to accessible clients indicating that the focus has changed within a custom control.

  Parameters:
    `childID` - an identifier specifying a child of the control
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control

### textCaretMoved

    public void textCaretMoved(int index)

  Sends a message to accessible clients that the text caret has moved within a custom control.

  Parameters:
    `index` - the new caret index within the control
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  Since:
    3.0

### textChanged

    public void textChanged(int type,
                            int startIndex,
                            int length)

  Sends a message to accessible clients that the text within a custom control has changed.

  Parameters:
    `type` - the type of change, one of `ACC.NOTIFY_TEXT_INSERT` or `ACC.NOTIFY_TEXT_DELETE`
    `startIndex` - the text index within the control where the insertion or deletion begins
    `length` - the non-negative length in characters of the insertion or deletion
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  Since:
    3.0
  See Also:
    `ACC.TEXT_INSERT`, `ACC.TEXT_DELETE`

### textSelectionChanged

    public void textSelectionChanged()

  Sends a message to accessible clients that the text selection has changed within a custom control.

  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver's control has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver's control
  Since:
    3.0

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.