Eclipse Remote Application Platform

## org.eclipse.swt.accessibility
Class Accessible

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

    public class Accessible

extends java.lang.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:
  1.4
See Also:
  `Control.getAccessible()`, `AccessibleListener`, `AccessibleEvent`, `AccessibleControlListener`, `AccessibleControlEvent`, Accessibility snippets, Sample code and further information

Constructor Summary
`Accessible(Accessible parent)` Constructs a new instance of this class given its parent.

Method Summary
`void` `addAccessibleActionListener(AccessibleActionListener listener)` Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleAction` interface.
`void` `addAccessibleAttributeListener(AccessibleAttributeListener listener)` Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleAttribute` interface.
`void` `addAccessibleControlListener(AccessibleControlListener listener)` Adds the listener to the collection of listeners who will be notified when an accessible client asks for custom control specific information.
`void` `addAccessibleEditableTextListener(AccessibleEditableTextListener listener)` Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleEditableText` interface.
`void` `addAccessibleHyperlinkListener(AccessibleHyperlinkListener listener)` Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleHyperlink` interface.
`void` `addAccessibleListener(AccessibleListener listener)` Adds the listener to the collection of listeners who will be notified when an accessible client asks for certain strings, such as name, description, help, or keyboard shortcut.
`void` `addAccessibleTableCellListener(AccessibleTableCellListener listener)` Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleTableCell` interface.
`void` `addAccessibleTableListener(AccessibleTableListener listener)` Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleTable` interface.
`void` `addAccessibleTextListener(AccessibleTextListener listener)` Adds the listener to the collection of listeners who will be notified when an accessible client asks for custom text control specific information.
`void` `addAccessibleValueListener(AccessibleValueListener listener)` Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleValue` interface.
`void` `addRelation(int type, Accessible target)` Adds a relation with the specified type and target to the receiver's set of relations.
`void` `dispose()` Disposes of the operating system resources associated with the receiver, and removes the receiver from its parent's list of children.
`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` `removeAccessibleActionListener(AccessibleActionListener listener)` Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleAction` interface.
`void` `removeAccessibleAttributeListener(AccessibleAttributeListener listener)` Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleAttribute` interface.
`void` `removeAccessibleControlListener(AccessibleControlListener listener)` Removes the listener from the collection of listeners who will be notified when an accessible client asks for custom control specific information.
`void` `removeAccessibleEditableTextListener(AccessibleEditableTextListener listener)` Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleEditableText` interface.
`void` `removeAccessibleHyperlinkListener(AccessibleHyperlinkListener listener)` Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleHyperlink` interface.
`void` `removeAccessibleListener(AccessibleListener listener)` Removes the listener from the collection of listeners who will be notified when an accessible client asks for certain strings, such as name, description, help, or keyboard shortcut.
`void` `removeAccessibleTableCellListener(AccessibleTableCellListener listener)` Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleTableCell` interface.
`void` `removeAccessibleTableListener(AccessibleTableListener listener)` Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleTable` interface.
`void` `removeAccessibleTextListener(AccessibleTextListener listener)` Removes the listener from the collection of listeners who will be notified when an accessible client asks for custom text control specific information.
`void` `removeAccessibleValueListener(AccessibleValueListener listener)` Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleValue` interface.
`void` `removeRelation(int type, Accessible target)` Removes the relation with the specified type and target from the receiver's set of relations.
`void` `selectionChanged()` Sends a message to accessible clients that the child selection within a custom container control has changed.
`void` `sendEvent(int event, java.lang.Object eventData)` Sends a message with event-specific data to accessible clients indicating that something has changed within a custom control.
`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`

Constructor Detail

### Accessible

    public Accessible(Accessible parent)

  Constructs a new instance of this class given its parent.

  Parameters:
    `parent` - the Accessible parent, which must not be null
  Throws:
    `java.lang.IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the parent is null
  See Also:
    `Control.getAccessible()`

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 notified 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:
    `java.lang.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)`

### removeAccessibleListener

    public void removeAccessibleListener(AccessibleListener listener)

  Removes the listener from the collection of listeners who will be notified 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:
    `java.lang.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)`

### addAccessibleControlListener

    public void addAccessibleControlListener(AccessibleControlListener listener)

  Adds the listener to the collection of listeners who will be notified 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:
    `java.lang.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)`

### removeAccessibleControlListener

    public void removeAccessibleControlListener(AccessibleControlListener listener)

  Removes the listener from the collection of listeners who will be notified 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:
    `java.lang.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)`

### addAccessibleTextListener

    public void addAccessibleTextListener(AccessibleTextListener listener)

  Adds the listener to the collection of listeners who will be notified 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` and `AccessibleTextExtendedListener` interfaces.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for custom text control specific information
  Throws:
    `java.lang.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:
    `AccessibleTextListener`, `AccessibleTextExtendedListener`, `removeAccessibleTextListener(org.eclipse.swt.accessibility.AccessibleTextListener)`

### removeAccessibleTextListener

    public void removeAccessibleTextListener(AccessibleTextListener listener)

  Removes the listener from the collection of listeners who will be notified 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:
    `java.lang.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:
    `AccessibleTextListener`, `AccessibleTextExtendedListener`, `addAccessibleTextListener(org.eclipse.swt.accessibility.AccessibleTextListener)`

### addAccessibleActionListener

    public void addAccessibleActionListener(AccessibleActionListener listener)

  Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleAction` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for `AccessibleAction` interface properties
  Throws:
    `java.lang.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:
    `AccessibleActionListener`, `removeAccessibleActionListener(org.eclipse.swt.accessibility.AccessibleActionListener)`

### addAccessibleEditableTextListener

    public void addAccessibleEditableTextListener(AccessibleEditableTextListener listener)

  Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleEditableText` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for `AccessibleEditableText` interface properties
  Throws:
    `java.lang.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:
    `AccessibleEditableTextListener`, `removeAccessibleEditableTextListener(org.eclipse.swt.accessibility.AccessibleEditableTextListener)`

### addAccessibleHyperlinkListener

    public void addAccessibleHyperlinkListener(AccessibleHyperlinkListener listener)

  Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleHyperlink` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for `AccessibleHyperlink` interface properties
  Throws:
    `java.lang.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:
    `AccessibleHyperlinkListener`, `removeAccessibleHyperlinkListener(org.eclipse.swt.accessibility.AccessibleHyperlinkListener)`

### addAccessibleTableListener

    public void addAccessibleTableListener(AccessibleTableListener listener)

  Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleTable` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for `AccessibleTable` interface properties
  Throws:
    `java.lang.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:
    `AccessibleTableListener`, `removeAccessibleTableListener(org.eclipse.swt.accessibility.AccessibleTableListener)`

### addAccessibleTableCellListener

    public void addAccessibleTableCellListener(AccessibleTableCellListener listener)

  Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleTableCell` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for `AccessibleTableCell` interface properties
  Throws:
    `java.lang.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:
    `AccessibleTableCellListener`, `removeAccessibleTableCellListener(org.eclipse.swt.accessibility.AccessibleTableCellListener)`

### addAccessibleValueListener

    public void addAccessibleValueListener(AccessibleValueListener listener)

  Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleValue` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for `AccessibleValue` interface properties
  Throws:
    `java.lang.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:
    `AccessibleValueListener`, `removeAccessibleValueListener(org.eclipse.swt.accessibility.AccessibleValueListener)`

### addAccessibleAttributeListener

    public void addAccessibleAttributeListener(AccessibleAttributeListener listener)

  Adds the listener to the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleAttribute` interface.

  Parameters:
    `listener` - the listener that should be notified when the receiver is asked for `AccessibleAttribute` interface properties
  Throws:
    `java.lang.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:
    `AccessibleAttributeListener`, `removeAccessibleAttributeListener(org.eclipse.swt.accessibility.AccessibleAttributeListener)`

### addRelation

    public void addRelation(int type,
                            Accessible target)

  Adds a relation with the specified type and target to the receiver's set of relations.

  Parameters:
    `type` - an `ACC` constant beginning with RELATION_* indicating the type of relation
    `target` - the accessible that is the target for this relation

### dispose

    public void dispose()

  Disposes of the operating system resources associated with the receiver, and removes the receiver from its parent's list of children.

  This method should be called when an accessible that was created with the public constructor `Accessible(Accessible parent)` is no longer needed. You do not need to call this when the receiver's control is disposed, because all `Accessible` instances associated with a control are released when the control is disposed. It is also not necessary to call this for instances of `Accessible` that were retrieved with `Control.getAccessible()`.

### getControl

    public Control getControl()

  Returns the control for this Accessible object.

  Returns:
    the receiver's control

### removeAccessibleActionListener

    public void removeAccessibleActionListener(AccessibleActionListener listener)

  Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleAction` interface.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for `AccessibleAction` interface properties
  Throws:
    `java.lang.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:
    `AccessibleActionListener`, `addAccessibleActionListener(org.eclipse.swt.accessibility.AccessibleActionListener)`

### removeAccessibleEditableTextListener

    public void removeAccessibleEditableTextListener(AccessibleEditableTextListener listener)

  Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleEditableText` interface.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for `AccessibleEditableText` interface properties
  Throws:
    `java.lang.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:
    `AccessibleEditableTextListener`, `addAccessibleEditableTextListener(org.eclipse.swt.accessibility.AccessibleEditableTextListener)`

### removeAccessibleHyperlinkListener

    public void removeAccessibleHyperlinkListener(AccessibleHyperlinkListener listener)

  Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleHyperlink` interface.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for `AccessibleHyperlink` interface properties
  Throws:
    `java.lang.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:
    `AccessibleHyperlinkListener`, `addAccessibleHyperlinkListener(org.eclipse.swt.accessibility.AccessibleHyperlinkListener)`

### removeAccessibleTableListener

    public void removeAccessibleTableListener(AccessibleTableListener listener)

  Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleTable` interface.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for `AccessibleTable` interface properties
  Throws:
    `java.lang.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:
    `AccessibleTableListener`, `addAccessibleTableListener(org.eclipse.swt.accessibility.AccessibleTableListener)`

### removeAccessibleTableCellListener

    public void removeAccessibleTableCellListener(AccessibleTableCellListener listener)

  Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleTableCell` interface.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for `AccessibleTableCell` interface properties
  Throws:
    `java.lang.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:
    `AccessibleTableCellListener`, `addAccessibleTableCellListener(org.eclipse.swt.accessibility.AccessibleTableCellListener)`

### removeAccessibleValueListener

    public void removeAccessibleValueListener(AccessibleValueListener listener)

  Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleValue` interface.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for `AccessibleValue` interface properties
  Throws:
    `java.lang.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:
    `AccessibleValueListener`, `addAccessibleValueListener(org.eclipse.swt.accessibility.AccessibleValueListener)`

### removeAccessibleAttributeListener

    public void removeAccessibleAttributeListener(AccessibleAttributeListener listener)

  Removes the listener from the collection of listeners that will be notified when an accessible client asks for any of the properties defined in the `AccessibleAttribute` interface.

  Parameters:
    `listener` - the listener that should no longer be notified when the receiver is asked for `AccessibleAttribute` interface properties
  Throws:
    `java.lang.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:
    `AccessibleAttributeListener`, `addAccessibleAttributeListener(org.eclipse.swt.accessibility.AccessibleAttributeListener)`

### removeRelation

    public void removeRelation(int type,
                               Accessible target)

  Removes the relation with the specified type and target from the receiver's set of relations.

  Parameters:
    `type` - an `ACC` constant beginning with RELATION_* indicating the type of relation
    `target` - the accessible that is the target for this relation

### sendEvent

    public void sendEvent(int event,
                          java.lang.Object eventData)

  Sends a message with event-specific data to accessible clients indicating that something has changed within a custom control.

  Parameters:
    `event` - an `ACC` constant beginning with EVENT_* indicating the message to send
    `eventData` - an object containing event-specific data, or null if there is no event-specific data
  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
  See Also:
    `ACC.EVENT_ACTION_CHANGED`, `ACC.EVENT_ATTRIBUTE_CHANGED`, `ACC.EVENT_DESCRIPTION_CHANGED`, `ACC.EVENT_DOCUMENT_LOAD_COMPLETE`, `ACC.EVENT_DOCUMENT_LOAD_STOPPED`, `ACC.EVENT_DOCUMENT_RELOAD`, `ACC.EVENT_HYPERLINK_ACTIVATED`, `ACC.EVENT_HYPERLINK_ANCHOR_COUNT_CHANGED`, `ACC.EVENT_HYPERLINK_END_INDEX_CHANGED`, `ACC.EVENT_HYPERLINK_SELECTED_LINK_CHANGED`, `ACC.EVENT_HYPERLINK_START_INDEX_CHANGED`, `ACC.EVENT_HYPERTEXT_LINK_COUNT_CHANGED`, `ACC.EVENT_HYPERTEXT_LINK_SELECTED`, `ACC.EVENT_LOCATION_CHANGED`, `ACC.EVENT_NAME_CHANGED`, `ACC.EVENT_PAGE_CHANGED`, `ACC.EVENT_SECTION_CHANGED`, `ACC.EVENT_SELECTION_CHANGED`, `ACC.EVENT_STATE_CHANGED`, `ACC.EVENT_TABLE_CAPTION_CHANGED`, `ACC.EVENT_TABLE_CHANGED`, `ACC.EVENT_TABLE_COLUMN_DESCRIPTION_CHANGED`, `ACC.EVENT_TABLE_COLUMN_HEADER_CHANGED`, `ACC.EVENT_TABLE_ROW_DESCRIPTION_CHANGED`, `ACC.EVENT_TABLE_ROW_HEADER_CHANGED`, `ACC.EVENT_TABLE_SUMMARY_CHANGED`, `ACC.EVENT_TEXT_ATTRIBUTE_CHANGED`, `ACC.EVENT_TEXT_CARET_MOVED`, `ACC.EVENT_TEXT_CHANGED`, `ACC.EVENT_TEXT_COLUMN_CHANGED`, `ACC.EVENT_TEXT_SELECTION_CHANGED`, `ACC.EVENT_VALUE_CHANGED`

### 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

### 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

### 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.TEXT_INSERT` or `ACC.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
  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

### 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

### 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.

Eclipse Remote Application Platform

Copyright (c) EclipseSource and others 2002, 2013. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0