|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.awt.FocusTraversalPolicy javax.swing.InternalFrameFocusTraversalPolicy javax.swing.SortingFocusTraversalPolicy
A FocusTraversalPolicy that determines traversal order by sorting the Components of a focus traversal cycle based on a given Comparator. Portions of the Component hierarchy that are not visible and displayable will not be included.
By default, SortingFocusTraversalPolicy implicitly transfers focus down-
cycle. That is, during normal focus traversal, the Component
traversed after a focus cycle root will be the focus-cycle-root's default
Component to focus. This behavior can be disabled using the
setImplicitDownCycleTraversal
method.
By default, methods of this class with return a Component only if it is
visible, displayable, enabled, and focusable. Subclasses can modify this
behavior by overriding the accept
method.
Comparator
Field Summary | |
private List |
cachedCycle
|
private Container |
cachedRoot
Used by getComponentAfter and getComponentBefore for efficiency. |
private Comparator |
comparator
|
private static SwingContainerOrderFocusTraversalPolicy |
fitnessTestPolicy
|
private boolean |
implicitDownCycleTraversal
|
Constructor Summary | |
protected |
SortingFocusTraversalPolicy()
Constructs a SortingFocusTraversalPolicy without a Comparator. |
|
SortingFocusTraversalPolicy(Comparator comparator)
Constructs a SortingFocusTraversalPolicy with the specified Comparator. |
Method Summary | |
protected boolean |
accept(Component aComponent)
Determines whether a Component is an acceptable choice as the new focus owner. |
private void |
enumerateAndSortCycle(Container focusCycleRoot,
List cycle,
Map defaults)
|
private void |
enumerateCycle(Container container,
List cycle)
|
protected Comparator |
getComparator()
Returns the Comparator which will be used to sort the Components in a focus traversal cycle. |
Component |
getComponentAfter(Container focusCycleRoot,
Component aComponent)
Returns the Component that should receive the focus after aComponent. |
Component |
getComponentBefore(Container focusCycleRoot,
Component aComponent)
Returns the Component that should receive the focus before aComponent. |
Component |
getDefaultComponent(Container focusCycleRoot)
Returns the default Component to focus. |
Component |
getFirstComponent(Container focusCycleRoot)
Returns the first Component in the traversal cycle. |
boolean |
getImplicitDownCycleTraversal()
Returns whether this SortingFocusTraversalPolicy transfers focus down- cycle implicitly. |
Component |
getLastComponent(Container focusCycleRoot)
Returns the last Component in the traversal cycle. |
protected void |
setComparator(Comparator comparator)
Sets the Comparator which will be used to sort the Components in a focus traversal cycle. |
void |
setImplicitDownCycleTraversal(boolean implicitDownCycleTraversal)
Sets whether this SortingFocusTraversalPolicy transfers focus down-cycle implicitly. |
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 |
Field Detail |
private Comparator comparator
private boolean implicitDownCycleTraversal
private Container cachedRoot
private List cachedCycle
private static final SwingContainerOrderFocusTraversalPolicy fitnessTestPolicy
Constructor Detail |
protected SortingFocusTraversalPolicy()
setComparator
before installing this FocusTraversalPolicy on a focus cycle root or
KeyboardFocusManager.
public SortingFocusTraversalPolicy(Comparator comparator)
Method Detail |
private void enumerateAndSortCycle(Container focusCycleRoot, List cycle, Map defaults)
private void enumerateCycle(Container container, List cycle)
public Component getComponentAfter(Container focusCycleRoot, Component aComponent)
By default, SortingFocusTraversalPolicy implicitly transfers focus down-
cycle. That is, during normal focus traversal, the Component
traversed after a focus cycle root will be the focus-cycle-root's
default Component to focus. This behavior can be disabled using the
setImplicitDownCycleTraversal
method.
getComponentAfter
in class FocusTraversalPolicy
focusCycleRoot
- a focus cycle root of aComponentaComponent
- a (possibly indirect) child of focusCycleRoot, or
focusCycleRoot itself
IllegalArgumentException
- if focusCycleRoot is not a focus cycle
root of aComponent, or if either focusCycleRoot or aComponent is
nullpublic Component getComponentBefore(Container focusCycleRoot, Component aComponent)
By default, SortingFocusTraversalPolicy implicitly transfers focus down-
cycle. That is, during normal focus traversal, the Component
traversed after a focus cycle root will be the focus-cycle-root's
default Component to focus. This behavior can be disabled using the
setImplicitDownCycleTraversal
method.
getComponentBefore
in class FocusTraversalPolicy
focusCycleRoot
- a focus cycle root of aComponentaComponent
- a (possibly indirect) child of focusCycleRoot, or
focusCycleRoot itself
IllegalArgumentException
- if focusCycleRoot is not a focus cycle
root of aComponent, or if either focusCycleRoot or aComponent is
nullpublic Component getFirstComponent(Container focusCycleRoot)
getFirstComponent
in class FocusTraversalPolicy
focusCycleRoot
- the focus cycle root whose first Component is to
be returned
IllegalArgumentException
- if focusCycleRoot is nullpublic Component getLastComponent(Container focusCycleRoot)
getLastComponent
in class FocusTraversalPolicy
focusCycleRoot
- the focus cycle root whose last Component is to be
returned
IllegalArgumentException
- if focusCycleRoot is nullpublic Component getDefaultComponent(Container focusCycleRoot)
getFirstComponent
.
getDefaultComponent
in class FocusTraversalPolicy
focusCycleRoot
- the focus cycle root whose default Component is to
be returned
IllegalArgumentException
- if focusCycleRoot is nullgetFirstComponent(java.awt.Container)
public void setImplicitDownCycleTraversal(boolean implicitDownCycleTraversal)
true
, during normal focus traversal,
the Component traversed after a focus cycle root will be the focus-
cycle-root's default Component to focus. If false
, the
next Component in the focus traversal cycle rooted at the specified
focus cycle root will be traversed instead. The default value for this
property is true
.
implicitDownCycleTraversal
- whether this
SortingFocusTraversalPolicy transfers focus down-cycle implicitlygetImplicitDownCycleTraversal()
,
getFirstComponent(java.awt.Container)
public boolean getImplicitDownCycleTraversal()
true
, during normal focus
traversal, the Component traversed after a focus cycle root will be the
focus-cycle-root's default Component to focus. If false
,
the next Component in the focus traversal cycle rooted at the specified
focus cycle root will be traversed instead.
setImplicitDownCycleTraversal(boolean)
,
getFirstComponent(java.awt.Container)
protected void setComparator(Comparator comparator)
comparator
- the Comparator which will be used for sortingprotected Comparator getComparator()
protected boolean accept(Component aComponent)
aComponent
- the Component whose fitness as a focus owner is to
be tested
true
if aComponent is visible, displayable,
enabled, and focusable; false
otherwise
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |