javax.swing

Class SortingFocusTraversalPolicy

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 booleanaccept(Component comp)
Decide whether a component is an acceptable focus owner.
protected Comparator<? super Component>getComparator()
Get the current value of the {@link #comparator} property.
ComponentgetComponentAfter(Container root, Component comp)
Return the component which follows the specified component in this focus cycle, relative to the order imposed by {@link #comparator}.
ComponentgetComponentBefore(Container root, Component comp)
Return the component which precedes the specified component in this focus cycle, relative to the order imposed by {@link #comparator}.
ComponentgetDefaultComponent(Container root)
Return the default component of root, which is by default the same as the first component, returned by {@link #getFirstComponent}.
ComponentgetFirstComponent(Container root)
Return the first focusable component of the focus cycle root comp under the ordering imposed by the {@link #comparator} property.
booleangetImplicitDownCycleTraversal()
Return the current value of the {@link #implicitDownCycleTraversal} property.
ComponentgetLastComponent(Container root)
Return the last focusable component of the focus cycle root comp under the ordering imposed by the {@link #comparator} property.
protected voidsetComparator(Comparator<? super Component> comparator)
Set the current value of the {@link #comparator} property.
voidsetImplicitDownCycleTraversal(boolean down)
Set the current value of the {@link #implicitDownCycleTraversal} property.

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 {@link #comparator} property.

Returns: the current value of the property

See Also: SortingFocusTraversalPolicy

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 {@link #comparator}. Candidate components are only considered if they are accepted by the {@link #accept} method. If {@link #getImplicitDownCycleTraversal} is true and the comp is a focus cycle root, an "implicit DownCycle" occurs and the method returns the getDefaultComponent(comp).

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 {@link #comparator}. Candidate components are only considered if they are accepted by the {@link #accept} method.

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 {@link #getFirstComponent}.

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 {@link #comparator} property. Candidate components are only considered if they are accepted by the {@link #accept} method.

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

getImplicitDownCycleTraversal

public boolean getImplicitDownCycleTraversal()
Return the current value of the {@link #implicitDownCycleTraversal} property.

Returns: the current value of the property

See Also: SortingFocusTraversalPolicy

getLastComponent

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

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

setComparator

protected void setComparator(Comparator<? super Component> comparator)
Set the current value of the {@link #comparator} property.

Parameters: comparator the new value of the property

See Also: SortingFocusTraversalPolicy

setImplicitDownCycleTraversal

public void setImplicitDownCycleTraversal(boolean down)
Set the current value of the {@link #implicitDownCycleTraversal} property.

Parameters: down the new value of the property

See Also: SortingFocusTraversalPolicy