139 comparator.setComponentOrientation(root.getComponentOrientation());
140 return layoutPolicy.getLastComponent(root);
141 }
142
143 return null;
144 }
145
146 public boolean compareTabOrder(Component a, Component b) {
147 return (comparator.compare(a, b) < 0);
148 }
149 }
150
151 final class LegacyLayoutFocusTraversalPolicy
152 extends LayoutFocusTraversalPolicy
153 {
154 LegacyLayoutFocusTraversalPolicy(DefaultFocusManager defaultFocusManager) {
155 super(new CompareTabOrderComparator(defaultFocusManager));
156 }
157 }
158
159 final class CompareTabOrderComparator implements Comparator {
160 private final DefaultFocusManager defaultFocusManager;
161
162 CompareTabOrderComparator(DefaultFocusManager defaultFocusManager) {
163 this.defaultFocusManager = defaultFocusManager;
164 }
165
166 public int compare(Object o1, Object o2) {
167 if (o1 == o2) {
168 return 0;
169 }
170 return (defaultFocusManager.compareTabOrder((Component)o1,
171 (Component)o2)) ? -1 : 1;
172 }
173 }
|
139 comparator.setComponentOrientation(root.getComponentOrientation());
140 return layoutPolicy.getLastComponent(root);
141 }
142
143 return null;
144 }
145
146 public boolean compareTabOrder(Component a, Component b) {
147 return (comparator.compare(a, b) < 0);
148 }
149 }
150
151 final class LegacyLayoutFocusTraversalPolicy
152 extends LayoutFocusTraversalPolicy
153 {
154 LegacyLayoutFocusTraversalPolicy(DefaultFocusManager defaultFocusManager) {
155 super(new CompareTabOrderComparator(defaultFocusManager));
156 }
157 }
158
159 final class CompareTabOrderComparator implements Comparator<Component> {
160 private final DefaultFocusManager defaultFocusManager;
161
162 CompareTabOrderComparator(DefaultFocusManager defaultFocusManager) {
163 this.defaultFocusManager = defaultFocusManager;
164 }
165
166 public int compare(Component o1, Component o2) {
167 if (o1 == o2) {
168 return 0;
169 }
170 return (defaultFocusManager.compareTabOrder(o1, o2)) ? -1 : 1;
171 }
172 }
|