Module java.desktop
Package javax.swing

## Class JTree.AccessibleJTree.AccessibleJTreeNode

- java.lang.Object
- - javax.accessibility.AccessibleContext
  - - javax.swing.JTree.AccessibleJTree.AccessibleJTreeNode

- All Implemented Interfaces:
    `Accessible`, `AccessibleAction`, `AccessibleComponent`, `AccessibleSelection`
  Enclosing class:
    JTree.AccessibleJTree

      protected class JTree.AccessibleJTree.AccessibleJTreeNode
      extends AccessibleContext
      implements Accessible, AccessibleComponent, AccessibleSelection, AccessibleAction

  This class implements accessibility support for the `JTree` child. It provides an implementation of the Java Accessibility API appropriate to tree nodes.

- - ### Field Summary

    - ### Fields declared in class javax.accessibility.AccessibleContext

      `ACCESSIBLE_ACTION_PROPERTY, ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY, ACCESSIBLE_CARET_PROPERTY, ACCESSIBLE_CHILD_PROPERTY, ACCESSIBLE_COMPONENT_BOUNDS_CHANGED, ACCESSIBLE_DESCRIPTION_PROPERTY, ACCESSIBLE_HYPERTEXT_OFFSET, ACCESSIBLE_INVALIDATE_CHILDREN, ACCESSIBLE_NAME_PROPERTY, ACCESSIBLE_SELECTION_PROPERTY, ACCESSIBLE_STATE_PROPERTY, ACCESSIBLE_TABLE_CAPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_HEADER_CHANGED, ACCESSIBLE_TABLE_MODEL_CHANGED, ACCESSIBLE_TABLE_ROW_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_ROW_HEADER_CHANGED, ACCESSIBLE_TABLE_SUMMARY_CHANGED, ACCESSIBLE_TEXT_ATTRIBUTES_CHANGED, ACCESSIBLE_TEXT_PROPERTY, ACCESSIBLE_VALUE_PROPERTY, ACCESSIBLE_VISIBLE_DATA_PROPERTY, accessibleDescription, accessibleName`

    - ### Fields declared in interface javax.accessibility.AccessibleAction

      `CLICK, DECREMENT, INCREMENT, TOGGLE_EXPAND, TOGGLE_POPUP`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `AccessibleJTreeNode​(JTree t, TreePath p, Accessible ap)` | Constructs an AccessibleJTreeNode

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addAccessibleSelection​(int i)` | Adds the specified selected item in the object to the object's selection.
    `void` | `addPropertyChangeListener​(PropertyChangeListener l)` | Add a PropertyChangeListener to the listener list.
    `void` | `clearAccessibleSelection()` | Clears the selection in the object, so that nothing in the object is selected.
    `boolean` | `doAccessibleAction​(int i)` | Perform the specified Action on the tree node.
    `AccessibleAction` | `getAccessibleAction()` | Get the AccessibleAction associated with this object.
    `int` | `getAccessibleActionCount()` | Returns the number of accessible actions available in this tree node.
    `String` | `getAccessibleActionDescription​(int i)` | Return a description of the specified action of the tree node.
    `Accessible` | `getAccessibleAt​(Point p)` | Returns the `Accessible` child, if one exists, contained at the local coordinate `Point`.
    `Accessible` | `getAccessibleChild​(int i)` | Return the specified Accessible child of the object.
    `int` | `getAccessibleChildrenCount()` | Returns the number of accessible children in the object.
    `AccessibleComponent` | `getAccessibleComponent()` | Get the AccessibleComponent associated with this object.
    `AccessibleContext` | `getAccessibleContext()` | Get the AccessibleContext associated with this tree node.
    `String` | `getAccessibleDescription()` | Get the accessible description of this object.
    `int` | `getAccessibleIndexInParent()` | Get the index of this object in its accessible parent.
    `String` | `getAccessibleName()` | Get the accessible name of this object.
    `Accessible` | `getAccessibleParent()` | Get the Accessible parent of this object.
    `AccessibleRole` | `getAccessibleRole()` | Get the role of this object.
    `AccessibleSelection` | `getAccessibleSelection()` | Get the AccessibleSelection associated with this object if one exists.
    `Accessible` | `getAccessibleSelection​(int i)` | Returns an Accessible representing the specified selected item in the object.
    `int` | `getAccessibleSelectionCount()` | Returns the number of items currently selected.
    `AccessibleStateSet` | `getAccessibleStateSet()` | Get the state set of this object.
    `AccessibleText` | `getAccessibleText()` | Get the AccessibleText associated with this object if one exists.
    `AccessibleValue` | `getAccessibleValue()` | Get the AccessibleValue associated with this object if one exists.
    `Color` | `getBackground()` | Get the background color of this object.
    `Color` | `getForeground()` | Get the foreground color of this object.
    `Locale` | `getLocale()` | Gets the locale of the component.
    `protected Point` | `getLocationInJTree()` | Returns the relative location of the node
    `boolean` | `isAccessibleChildSelected​(int i)` | Returns true if the current child of this object is selected.
    `void` | `removeAccessibleSelection​(int i)` | Removes the specified selected item in the object from the object's selection.
    `void` | `removePropertyChangeListener​(PropertyChangeListener l)` | Remove a PropertyChangeListener from the listener list.
    `void` | `selectAllAccessibleSelection()` | Causes every selected item in the object to be selected if the object supports multiple selections.
    `void` | `setAccessibleDescription​(String s)` | Set the accessible description of this object.
    `void` | `setAccessibleName​(String s)` | Set the localized accessible name of this object.
    `void` | `setBackground​(Color c)` | Set the background color of this object.

    - ### Methods declared in class javax.accessibility.AccessibleContext

      `firePropertyChange, getAccessibleEditableText, getAccessibleIcon, getAccessibleRelationSet, getAccessibleTable, setAccessibleParent`

    - ### Methods declared in class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods declared in interface javax.accessibility.AccessibleComponent

      `addFocusListener, contains, getBounds, getCursor, getFont, getFontMetrics, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible`

- - ### Constructor Detail

    - #### AccessibleJTreeNode

          public AccessibleJTreeNode​(JTree t,
                                     TreePath p,
                                     Accessible ap)

      Constructs an AccessibleJTreeNode
      Parameters:
        `t` - an instance of `JTree`
        `p` - an instance of `TreePath`
        `ap` - an instance of `Accessible`
      Since:
        1.4

  - ### Method Detail

    - #### getAccessibleContext

          public AccessibleContext getAccessibleContext()

      Get the AccessibleContext associated with this tree node. In the implementation of the Java Accessibility API for this class, return this object, which is its own AccessibleContext.
      Specified by:
        `getAccessibleContext` in interface `Accessible`
      Returns:
        this object

    - #### getAccessibleName

          public String getAccessibleName()

      Get the accessible name of this object.
      Overrides:
        `getAccessibleName` in class `AccessibleContext`
      Returns:
        the localized name of the object; null if this object does not have a name
      See Also:
        `AccessibleContext.setAccessibleName(java.lang.String)`

    - #### setAccessibleName

          public void setAccessibleName​(String s)

      Set the localized accessible name of this object.
      Overrides:
        `setAccessibleName` in class `AccessibleContext`
      Parameters:
        `s` - the new localized name of the object.
      See Also:
        `AccessibleContext.getAccessibleName()`, `AccessibleContext.addPropertyChangeListener(java.beans.PropertyChangeListener)`

    - #### getAccessibleDescription

          public String getAccessibleDescription()

      Get the accessible description of this object.
      Overrides:
        `getAccessibleDescription` in class `AccessibleContext`
      Returns:
        the localized description of the object; null if this object does not have a description
      See Also:
        `AccessibleContext.setAccessibleDescription(java.lang.String)`

    - #### setAccessibleDescription

          public void setAccessibleDescription​(String s)

      Set the accessible description of this object.
      Overrides:
        `setAccessibleDescription` in class `AccessibleContext`
      Parameters:
        `s` - the new localized description of the object
      See Also:
        `AccessibleContext.setAccessibleName(java.lang.String)`, `AccessibleContext.addPropertyChangeListener(java.beans.PropertyChangeListener)`

    - #### getAccessibleRole

          public AccessibleRole getAccessibleRole()

      Get the role of this object.
      Specified by:
        `getAccessibleRole` in class `AccessibleContext`
      Returns:
        an instance of AccessibleRole describing the role of the object
      See Also:
        `AccessibleRole`

    - #### getAccessibleStateSet

          public AccessibleStateSet getAccessibleStateSet()

      Get the state set of this object.
      Specified by:
        `getAccessibleStateSet` in class `AccessibleContext`
      Returns:
        an instance of AccessibleStateSet containing the current state set of the object
      See Also:
        `AccessibleState`

    - #### getAccessibleParent

          public Accessible getAccessibleParent()

      Get the Accessible parent of this object.
      Overrides:
        `getAccessibleParent` in class `AccessibleContext`
      Returns:
        the Accessible parent of this object; null if this object does not have an Accessible parent

    - #### getAccessibleIndexInParent

          public int getAccessibleIndexInParent()

      Get the index of this object in its accessible parent.
      Specified by:
        `getAccessibleIndexInParent` in class `AccessibleContext`
      Returns:
        the index of this object in its parent; -1 if this object does not have an accessible parent.
      See Also:
        `getAccessibleParent()`

    - #### getAccessibleChildrenCount

          public int getAccessibleChildrenCount()

      Returns the number of accessible children in the object.
      Specified by:
        `getAccessibleChildrenCount` in class `AccessibleContext`
      Returns:
        the number of accessible children in the object.

    - #### getAccessibleChild

          public Accessible getAccessibleChild​(int i)

      Return the specified Accessible child of the object.
      Specified by:
        `getAccessibleChild` in class `AccessibleContext`
      Parameters:
        `i` - zero-based index of child
      Returns:
        the Accessible child of the object
      See Also:
        `AccessibleContext.getAccessibleChildrenCount()`

    - #### getLocale

          public Locale getLocale()

      Gets the locale of the component. If the component does not have a locale, then the locale of its parent is returned.
      Specified by:
        `getLocale` in class `AccessibleContext`
      Returns:
        This component's locale. If this component does not have a locale, the locale of its parent is returned.
      Throws:
        `IllegalComponentStateException` - If the Component does not have its own locale and has not yet been added to a containment hierarchy such that the locale can be determined from the containing parent.
      See Also:
        `Component.setLocale(java.util.Locale)`

    - #### addPropertyChangeListener

          public void addPropertyChangeListener​(PropertyChangeListener l)

      Add a PropertyChangeListener to the listener list. The listener is registered for all properties.
      Overrides:
        `addPropertyChangeListener` in class `AccessibleContext`
      Parameters:
        `l` - The PropertyChangeListener to be added
      See Also:
        `AccessibleContext.ACCESSIBLE_NAME_PROPERTY`, `AccessibleContext.ACCESSIBLE_DESCRIPTION_PROPERTY`, `AccessibleContext.ACCESSIBLE_STATE_PROPERTY`, `AccessibleContext.ACCESSIBLE_VALUE_PROPERTY`, `AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY`, `AccessibleContext.ACCESSIBLE_TEXT_PROPERTY`, `AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY`

    - #### removePropertyChangeListener

          public void removePropertyChangeListener​(PropertyChangeListener l)

      Remove a PropertyChangeListener from the listener list. This removes a PropertyChangeListener that was registered for all properties.
      Overrides:
        `removePropertyChangeListener` in class `AccessibleContext`
      Parameters:
        `l` - The PropertyChangeListener to be removed

    - #### getAccessibleAction

          public AccessibleAction getAccessibleAction()

      Get the AccessibleAction associated with this object. In the implementation of the Java Accessibility API for this class, return this object, which is responsible for implementing the AccessibleAction interface on behalf of itself.
      Overrides:
        `getAccessibleAction` in class `AccessibleContext`
      Returns:
        this object
      See Also:
        `AccessibleAction`

    - #### getAccessibleComponent

          public AccessibleComponent getAccessibleComponent()

      Get the AccessibleComponent associated with this object. In the implementation of the Java Accessibility API for this class, return this object, which is responsible for implementing the AccessibleComponent interface on behalf of itself.
      Overrides:
        `getAccessibleComponent` in class `AccessibleContext`
      Returns:
        this object
      See Also:
        `AccessibleComponent`

    - #### getAccessibleSelection

          public AccessibleSelection getAccessibleSelection()

      Get the AccessibleSelection associated with this object if one exists. Otherwise return null.
      Overrides:
        `getAccessibleSelection` in class `AccessibleContext`
      Returns:
        the AccessibleSelection, or null
      See Also:
        `AccessibleSelection`

    - #### getAccessibleText

          public AccessibleText getAccessibleText()

      Get the AccessibleText associated with this object if one exists. Otherwise return null.
      Overrides:
        `getAccessibleText` in class `AccessibleContext`
      Returns:
        the AccessibleText, or null
      See Also:
        `AccessibleText`

    - #### getAccessibleValue

          public AccessibleValue getAccessibleValue()

      Get the AccessibleValue associated with this object if one exists. Otherwise return null.
      Overrides:
        `getAccessibleValue` in class `AccessibleContext`
      Returns:
        the AccessibleValue, or null
      See Also:
        `AccessibleValue`

    - #### getBackground

          public Color getBackground()

      Get the background color of this object.
      Specified by:
        `getBackground` in interface `AccessibleComponent`
      Returns:
        the background color, if supported, of the object; otherwise, null
      See Also:
        `AccessibleComponent.setBackground(java.awt.Color)`

    - #### setBackground

          public void setBackground​(Color c)

      Set the background color of this object.
      Specified by:
        `setBackground` in interface `AccessibleComponent`
      Parameters:
        `c` - the new Color for the background
      See Also:
        `AccessibleComponent.setBackground(java.awt.Color)`

    - #### getForeground

          public Color getForeground()

      Get the foreground color of this object.
      Specified by:
        `getForeground` in interface `AccessibleComponent`
      Returns:
        the foreground color, if supported, of the object; otherwise, null
      See Also:
        `AccessibleComponent.setForeground(java.awt.Color)`

    - #### getLocationInJTree

          protected Point getLocationInJTree()

      Returns the relative location of the node
      Returns:
        the relative location of the node

    - #### getAccessibleAt

          public Accessible getAccessibleAt​(Point p)

      Returns the `Accessible` child, if one exists, contained at the local coordinate `Point`. Otherwise returns `null`.
      Specified by:
        `getAccessibleAt` in interface `AccessibleComponent`
      Parameters:
        `p` - point in local coordinates of this `Accessible`
      Returns:
        the `Accessible`, if it exists, at the specified location; else `null`

    - #### getAccessibleSelectionCount

          public int getAccessibleSelectionCount()

      Returns the number of items currently selected. If no items are selected, the return value will be 0.
      Specified by:
        `getAccessibleSelectionCount` in interface `AccessibleSelection`
      Returns:
        the number of items currently selected.

    - #### getAccessibleSelection

          public Accessible getAccessibleSelection​(int i)

      Returns an Accessible representing the specified selected item in the object. If there isn't a selection, or there are fewer items selected than the integer passed in, the return value will be null.
      Specified by:
        `getAccessibleSelection` in interface `AccessibleSelection`
      Parameters:
        `i` - the zero-based index of selected items
      Returns:
        an Accessible containing the selected item
      See Also:
        `AccessibleSelection.getAccessibleSelectionCount()`

    - #### isAccessibleChildSelected

          public boolean isAccessibleChildSelected​(int i)

      Returns true if the current child of this object is selected.
      Specified by:
        `isAccessibleChildSelected` in interface `AccessibleSelection`
      Parameters:
        `i` - the zero-based index of the child in this Accessible object.
      Returns:
        `true` if the current child of this object is selected; else `false`
      See Also:
        `AccessibleContext.getAccessibleChild(int)`

    - #### addAccessibleSelection

          public void addAccessibleSelection​(int i)

      Adds the specified selected item in the object to the object's selection. If the object supports multiple selections, the specified item is added to any existing selection, otherwise it replaces any existing selection in the object. If the specified item is already selected, this method has no effect.
      Specified by:
        `addAccessibleSelection` in interface `AccessibleSelection`
      Parameters:
        `i` - the zero-based index of selectable items
      See Also:
        `AccessibleContext.getAccessibleChild(int)`

    - #### removeAccessibleSelection

          public void removeAccessibleSelection​(int i)

      Removes the specified selected item in the object from the object's selection. If the specified item isn't currently selected, this method has no effect.
      Specified by:
        `removeAccessibleSelection` in interface `AccessibleSelection`
      Parameters:
        `i` - the zero-based index of selectable items
      See Also:
        `AccessibleContext.getAccessibleChild(int)`

    - #### clearAccessibleSelection

          public void clearAccessibleSelection()

      Clears the selection in the object, so that nothing in the object is selected.
      Specified by:
        `clearAccessibleSelection` in interface `AccessibleSelection`

    - #### selectAllAccessibleSelection

          public void selectAllAccessibleSelection()

      Causes every selected item in the object to be selected if the object supports multiple selections.
      Specified by:
        `selectAllAccessibleSelection` in interface `AccessibleSelection`

    - #### getAccessibleActionCount

          public int getAccessibleActionCount()

      Returns the number of accessible actions available in this tree node. If this node is not a leaf, there is at least one action (toggle expand), in addition to any available on the object behind the TreeCellRenderer.
      Specified by:
        `getAccessibleActionCount` in interface `AccessibleAction`
      Returns:
        the number of Actions in this object

    - #### getAccessibleActionDescription

          public String getAccessibleActionDescription​(int i)

      Return a description of the specified action of the tree node. If this node is not a leaf, there is at least one action description (toggle expand), in addition to any available on the object behind the TreeCellRenderer.
      Specified by:
        `getAccessibleActionDescription` in interface `AccessibleAction`
      Parameters:
        `i` - zero-based index of the actions
      Returns:
        a description of the action
      See Also:
        `AccessibleAction.getAccessibleActionCount()`

    - #### doAccessibleAction

          public boolean doAccessibleAction​(int i)

      Perform the specified Action on the tree node. If this node is not a leaf, there is at least one action which can be done (toggle expand), in addition to any available on the object behind the TreeCellRenderer.
      Specified by:
        `doAccessibleAction` in interface `AccessibleAction`
      Parameters:
        `i` - zero-based index of actions
      Returns:
        true if the action was performed; else false.
      See Also:
        `AccessibleAction.getAccessibleActionCount()`