javax.swing

Class SortingFocusTraversalPolicy

Known Direct Subclasses:
LayoutFocusTraversalPolicy

public class SortingFocusTraversalPolicy
extends InternalFrameFocusTraversalPolicy

Since:
1.4

Constructor Summary

SortingFocusTraversalPolicy()
Creates a new SortingFocusTraversalPolicy with no comparator set.
SortingFocusTraversalPolicy(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.
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(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(Component> comparator)
Set the current value of the comparator property.
void
setImplicitDownCycleTraversal(boolean down)
Set the current value of the implicitDownCycleTraversal property.
protected Comparator
super Component> getComparator()
Get the current value of the comparator property.

Methods inherited from class javax.swing.InternalFrameFocusTraversalPolicy

getInitialComponent

Methods inherited from class java.awt.FocusTraversalPolicy

getComponentAfter, getComponentBefore, getDefaultComponent, getFirstComponent, getInitialComponent, getLastComponent

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

SortingFocusTraversalPolicy

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

SortingFocusTraversalPolicy

public SortingFocusTraversalPolicy(Component> comparator)
Creates a new SortingFocusTraversalPolicy with the given comparator set.
Parameters:
comparator - the comparator to set

Method Details

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

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(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).
Overrides:
getComponentAfter in interface 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(Component) method.
Overrides:
getComponentBefore in interface 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(Container).
Overrides:
getDefaultComponent in interface 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(Component) method.
Overrides:
getFirstComponent in interface 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

getImplicitDownCycleTraversal

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

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(Component) method.
Overrides:
getLastComponent in interface 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

setComparator

protected void setComparator(Component> comparator)
Set the current value of the 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 implicitDownCycleTraversal property.
Parameters:
down - the new value of the property

super Component> getComparator

protected Comparatorsuper Component> getComparator()
Get the current value of the comparator property.
Returns:
the current value of the property

SortingFocusTraversalPolicy.java -- Copyright (C) 2005 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.