public class FocusTraveller extends FocusTraversalPolicy
FocusTraversalPolicy that allows for easy creation of
the traversal policy.
Note that the "delta" parameter of both
cycle(Component, int) and indexCycle(int, int) can be any
positive or negative integer. Both methods compute indices using the wonders
of modular arithmetic.
| Modifier and Type | Field and Description |
|---|---|
private Component[] |
components
Components to traverse, stored in the desired traversal order.
|
| Constructor and Description |
|---|
FocusTraveller(Collection<Component> componentsToTraverse)
Creates the
FocusTraversalPolicy for the given components. |
FocusTraveller(Component... componentsToTraverse)
Creates the
FocusTraversalPolicy. |
| Modifier and Type | Method and Description |
|---|---|
private Component |
cycle(Component currentComponent,
int delta)
Cycles through components.
|
Component |
getComponentAfter(Container container,
Component component)
Gets the next component after
component. |
Component |
getComponentBefore(Container container,
Component component)
Gets the component before
component. |
Component |
getDefaultComponent(Container container)
Not used.
|
Component |
getFirstComponent(Container container)
Gets the first component.
|
Component |
getLastComponent(Container container)
Gets the last component.
|
private int |
indexCycle(int index,
int delta)
Cycles through valid index values.
|
getInitialComponentprivate final Component[] components
public FocusTraveller(Component... componentsToTraverse)
FocusTraversalPolicy.componentsToTraverse - Components to traverse, in the desired order.
Cannot be null.public FocusTraveller(Collection<Component> componentsToTraverse)
FocusTraversalPolicy for the given components.componentsToTraverse - Components to traverse. Cannot be null.private int indexCycle(int index, int delta)
index - Current index.delta - Index of next component, relative to index.private Component cycle(Component currentComponent, int delta)
currentComponent - Cannot be null.delta - Index of next component, relative to currentComponent.public Component getComponentAfter(Container container, Component component)
component.getComponentAfter in class FocusTraversalPolicycontainer - Ignored.component - Cannot be null.component.public Component getComponentBefore(Container container, Component component)
component.getComponentBefore in class FocusTraversalPolicycontainer - Ignored.component - Cannot be null.Component before component in traversal order.public Component getFirstComponent(Container container)
getFirstComponent in class FocusTraversalPolicycontainer - Ignored.Component in traversal order.public Component getLastComponent(Container container)
getLastComponent in class FocusTraversalPolicycontainer - Ignored.Component in traversal order.public Component getDefaultComponent(Container container)
getFirstComponent(Container).getDefaultComponent in class FocusTraversalPolicycontainer - Ignored.Component in traversal order.