javax.swing
Class SortingFocusTraversalPolicy

java.lang.Object
  extended by java.awt.FocusTraversalPolicy
      extended by javax.swing.InternalFrameFocusTraversalPolicy
          extended by javax.swing.SortingFocusTraversalPolicy
Direct Known Subclasses:
LayoutFocusTraversalPolicy

public class SortingFocusTraversalPolicy
extends InternalFrameFocusTraversalPolicy

Since:
1.4

Constructor Summary
protected SortingFocusTraversalPolicy()
          Creates a new SortingFocusTraversalPolicy with no comparator set.
  SortingFocusTraversalPolicy(Comparator<? super Component> comparator)
          Creates a new SortingFocusTraversalPolicy with the given comparator set.
 
Method Summary
protected  boolean accept(Component comp)
          Decide whether a component is an acceptable focus owner.
protected  Comparator<? super Component> getComparator()
          Get the current value of the comparator property.
 Component getComponentAfter(Container root, Component comp)
          Return the component which follows the specified component in this focus cycle, relative to the order imposed by comparator.
 Component getComponentBefore(Container root, Component comp)
          Return the component which precedes the specified component in this focus cycle, relative to the order imposed by comparator.
 Component getDefaultComponent(Container root)
          Return the default component of root, which is by default the same as the first component, returned by getFirstComponent(java.awt.Container).
 Component getFirstComponent(Container root)
          Return the first focusable component of the focus cycle root comp under the ordering imposed by the comparator property.
 boolean getImplicitDownCycleTraversal()
          Return the current value of the implicitDownCycleTraversal property.
 Component getLastComponent(Container root)
          Return the last focusable component of the focus cycle root comp under the ordering imposed by the comparator property.
protected  void setComparator(Comparator<? super Component> comparator)
          Set the current value of the comparator property.
 void setImplicitDownCycleTraversal(boolean down)
          Set the current value of the implicitDownCycleTraversal property.
 
Methods inherited from class javax.swing.InternalFrameFocusTraversalPolicy
getInitialComponent
 
Methods inherited from class java.awt.FocusTraversalPolicy
getInitialComponent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SortingFocusTraversalPolicy

protected SortingFocusTraversalPolicy()
Creates a new SortingFocusTraversalPolicy with no comparator set.


SortingFocusTraversalPolicy

public SortingFocusTraversalPolicy(Comparator<? super Component> comparator)
Creates a new SortingFocusTraversalPolicy with the given comparator set.

Parameters:
comparator - the comparator to set
Method Detail

accept

protected boolean accept(Component comp)
Decide whether a component is an acceptable focus owner.

Parameters:
comp - The component which is a candidate for focus ownership.
Returns:
true if the component is focusable, displayable, visible, and enabled; otherwise false

getComparator

protected Comparator<? super Component> getComparator()
Get the current value of the comparator property.

Returns:
the current value of the property
See Also:
setComparator(java.util.Comparator)

setComparator

protected void setComparator(Comparator<? super Component> comparator)
Set the current value of the comparator property.

Parameters:
comparator - the new value of the property
See Also:
getComparator()

getComponentAfter

public Component getComponentAfter(Container root,
                                   Component comp)
Return the component which follows the specified component in this focus cycle, relative to the order imposed by comparator. Candidate components are only considered if they are accepted by the accept(java.awt.Component) method. If getImplicitDownCycleTraversal() is true and the comp is a focus cycle root, an "implicit DownCycle" occurs and the method returns the getDefaultComponent(comp).

Specified by:
getComponentAfter in class FocusTraversalPolicy
Parameters:
root - the focus cycle root to search for a successor within
comp - the component to search for the successor of
Returns:
the component following the specified component under the specified root, or null if no such component is found
Throws:
IllegalArgumentException - if either argument is null, or if the root is not a focus cycle root of the component

getComponentBefore

public Component getComponentBefore(Container root,
                                    Component comp)
Return the component which precedes the specified component in this focus cycle, relative to the order imposed by comparator. Candidate components are only considered if they are accepted by the accept(java.awt.Component) method.

Specified by:
getComponentBefore in class FocusTraversalPolicy
Parameters:
root - the focus cycle root to search for a predecessor within
comp - the component to search for the predecessor of
Returns:
the component preceding the specified component under the specified root, or null if no such component is found
Throws:
IllegalArgumentException - if either argument is null, or if the root is not a focus cycle root of the component

getDefaultComponent

public Component getDefaultComponent(Container root)
Return the default component of root, which is by default the same as the first component, returned by getFirstComponent(java.awt.Container).

Specified by:
getDefaultComponent in class FocusTraversalPolicy
Parameters:
root - the focus cycle root to return the default component of
Returns:
the default focus component for root
Throws:
IllegalArgumentException - if root is null

getFirstComponent

public Component getFirstComponent(Container root)
Return the first focusable component of the focus cycle root comp under the ordering imposed by the comparator property. Candidate components are only considered if they are accepted by the accept(java.awt.Component) method.

Specified by:
getFirstComponent in class FocusTraversalPolicy
Parameters:
root - the focus cycle root to search for the first component of
Returns:
the first component under root, or null if no components are found.
Throws:
IllegalArgumentException - if root is null

getLastComponent

public Component getLastComponent(Container root)
Return the last focusable component of the focus cycle root comp under the ordering imposed by the comparator property. Candidate components are only considered if they are accepted by the accept(java.awt.Component) method.

Specified by:
getLastComponent in class FocusTraversalPolicy
Parameters:
root - the focus cycle root to search for the last component of
Returns:
the last component under root, or null if no components are found.
Throws:
IllegalArgumentException - if root is null

getImplicitDownCycleTraversal

public boolean getImplicitDownCycleTraversal()
Return the current value of the implicitDownCycleTraversal property.

Returns:
the current value of the property
See Also:
setImplicitDownCycleTraversal(boolean)

setImplicitDownCycleTraversal

public void setImplicitDownCycleTraversal(boolean down)
Set the current value of the implicitDownCycleTraversal property.

Parameters:
down - the new value of the property
See Also:
getImplicitDownCycleTraversal()