History

My first initial commit with all of mine experimental changes.

Dmitry Kabak (userdima committed 13 years ago

Commit d37b88d1 parent 3f5b46618352 files · +2598093 −-8690Browse files

Showing the changes to java/pkg/javax/swing/plaf/multi/MultiComboBoxUI.java (1 of 18352 files). Show all

Unified · Split

java/pkg/javax/swing/plaf/multi/MultiComboBoxUI.java+250−0
@@ -0,0 +1,250 @@
1/*
2 * Copyright (c) 1997, 2001, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25package javax.swing.plaf.multi;
26
27import java.util.Vector;
28import javax.swing.plaf.ComboBoxUI;
29import javax.swing.JComboBox;
30import javax.swing.plaf.ComponentUI;
31import javax.swing.JComponent;
32import java.awt.Graphics;
33import java.awt.Dimension;
34import javax.accessibility.Accessible;
35
36/**
37 * A multiplexing UI used to combine <code>ComboBoxUI</code>s.
38 *
39 * <p>This file was automatically generated by AutoMulti.
40 *
41 * @author Otto Multey
42 */
43public class MultiComboBoxUI extends ComboBoxUI {
44
45 /**
46 * The vector containing the real UIs. This is populated
47 * in the call to <code>createUI</code>, and can be obtained by calling
48 * the <code>getUIs</code> method. The first element is guaranteed to be the real UI
49 * obtained from the default look and feel.
50 */
51 protected Vector uis = new Vector();
52
53////////////////////
54// Common UI methods
55////////////////////
56
57 /**
58 * Returns the list of UIs associated with this multiplexing UI. This
59 * allows processing of the UIs by an application aware of multiplexing
60 * UIs on components.
61 */
62 public ComponentUI[] getUIs() {
63 return MultiLookAndFeel.uisToArray(uis);
64 }
65
66////////////////////
67// ComboBoxUI methods
68////////////////////
69
70 /**
71 * Invokes the <code>isFocusTraversable</code> method on each UI handled by this object.
72 *
73 * @return the value obtained from the first UI, which is
74 * the UI obtained from the default <code>LookAndFeel</code>
75 */
76 public boolean isFocusTraversable(JComboBox a) {
77 boolean returnValue =
78 ((ComboBoxUI) (uis.elementAt(0))).isFocusTraversable(a);
79 for (int i = 1; i < uis.size(); i++) {
80 ((ComboBoxUI) (uis.elementAt(i))).isFocusTraversable(a);
81 }
82 return returnValue;
83 }
84
85 /**
86 * Invokes the <code>setPopupVisible</code> method on each UI handled by this object.
87 */
88 public void setPopupVisible(JComboBox a, boolean b) {
89 for (int i = 0; i < uis.size(); i++) {
90 ((ComboBoxUI) (uis.elementAt(i))).setPopupVisible(a,b);
91 }
92 }
93
94 /**
95 * Invokes the <code>isPopupVisible</code> method on each UI handled by this object.
96 *
97 * @return the value obtained from the first UI, which is
98 * the UI obtained from the default <code>LookAndFeel</code>
99 */
100 public boolean isPopupVisible(JComboBox a) {
101 boolean returnValue =
102 ((ComboBoxUI) (uis.elementAt(0))).isPopupVisible(a);
103 for (int i = 1; i < uis.size(); i++) {
104 ((ComboBoxUI) (uis.elementAt(i))).isPopupVisible(a);
105 }
106 return returnValue;
107 }
108
109////////////////////
110// ComponentUI methods
111////////////////////
112
113 /**
114 * Invokes the <code>contains</code> method on each UI handled by this object.
115 *
116 * @return the value obtained from the first UI, which is
117 * the UI obtained from the default <code>LookAndFeel</code>
118 */
119 public boolean contains(JComponent a, int b, int c) {
120 boolean returnValue =
121 ((ComponentUI) (uis.elementAt(0))).contains(a,b,c);
122 for (int i = 1; i < uis.size(); i++) {
123 ((ComponentUI) (uis.elementAt(i))).contains(a,b,c);
124 }
125 return returnValue;
126 }
127
128 /**
129 * Invokes the <code>update</code> method on each UI handled by this object.
130 */
131 public void update(Graphics a, JComponent b) {
132 for (int i = 0; i < uis.size(); i++) {
133 ((ComponentUI) (uis.elementAt(i))).update(a,b);
134 }
135 }
136
137 /**
138 * Returns a multiplexing UI instance if any of the auxiliary
139 * <code>LookAndFeel</code>s supports this UI. Otherwise, just returns the
140 * UI object obtained from the default <code>LookAndFeel</code>.
141 */
142 public static ComponentUI createUI(JComponent a) {
143 ComponentUI mui = new MultiComboBoxUI();
144 return MultiLookAndFeel.createUIs(mui,
145 ((MultiComboBoxUI) mui).uis,
146 a);
147 }
148
149 /**
150 * Invokes the <code>installUI</code> method on each UI handled by this object.
151 */
152 public void installUI(JComponent a) {
153 for (int i = 0; i < uis.size(); i++) {
154 ((ComponentUI) (uis.elementAt(i))).installUI(a);
155 }
156 }
157
158 /**
159 * Invokes the <code>uninstallUI</code> method on each UI handled by this object.
160 */
161 public void uninstallUI(JComponent a) {
162 for (int i = 0; i < uis.size(); i++) {
163 ((ComponentUI) (uis.elementAt(i))).uninstallUI(a);
164 }
165 }
166
167 /**
168 * Invokes the <code>paint</code> method on each UI handled by this object.
169 */
170 public void paint(Graphics a, JComponent b) {
171 for (int i = 0; i < uis.size(); i++) {
172 ((ComponentUI) (uis.elementAt(i))).paint(a,b);
173 }
174 }
175
176 /**
177 * Invokes the <code>getPreferredSize</code> method on each UI handled by this object.
178 *
179 * @return the value obtained from the first UI, which is
180 * the UI obtained from the default <code>LookAndFeel</code>
181 */
182 public Dimension getPreferredSize(JComponent a) {
183 Dimension returnValue =
184 ((ComponentUI) (uis.elementAt(0))).getPreferredSize(a);
185 for (int i = 1; i < uis.size(); i++) {
186 ((ComponentUI) (uis.elementAt(i))).getPreferredSize(a);
187 }
188 return returnValue;
189 }
190
191 /**
192 * Invokes the <code>getMinimumSize</code> method on each UI handled by this object.
193 *
194 * @return the value obtained from the first UI, which is
195 * the UI obtained from the default <code>LookAndFeel</code>
196 */
197 public Dimension getMinimumSize(JComponent a) {
198 Dimension returnValue =
199 ((ComponentUI) (uis.elementAt(0))).getMinimumSize(a);
200 for (int i = 1; i < uis.size(); i++) {
201 ((ComponentUI) (uis.elementAt(i))).getMinimumSize(a);
202 }
203 return returnValue;
204 }
205
206 /**
207 * Invokes the <code>getMaximumSize</code> method on each UI handled by this object.
208 *
209 * @return the value obtained from the first UI, which is
210 * the UI obtained from the default <code>LookAndFeel</code>
211 */
212 public Dimension getMaximumSize(JComponent a) {
213 Dimension returnValue =
214 ((ComponentUI) (uis.elementAt(0))).getMaximumSize(a);
215 for (int i = 1; i < uis.size(); i++) {
216 ((ComponentUI) (uis.elementAt(i))).getMaximumSize(a);
217 }
218 return returnValue;
219 }
220
221 /**
222 * Invokes the <code>getAccessibleChildrenCount</code> method on each UI handled by this object.
223 *
224 * @return the value obtained from the first UI, which is
225 * the UI obtained from the default <code>LookAndFeel</code>
226 */
227 public int getAccessibleChildrenCount(JComponent a) {
228 int returnValue =
229 ((ComponentUI) (uis.elementAt(0))).getAccessibleChildrenCount(a);
230 for (int i = 1; i < uis.size(); i++) {
231 ((ComponentUI) (uis.elementAt(i))).getAccessibleChildrenCount(a);
232 }
233 return returnValue;
234 }
235
236 /**
237 * Invokes the <code>getAccessibleChild</code> method on each UI handled by this object.
238 *
239 * @return the value obtained from the first UI, which is
240 * the UI obtained from the default <code>LookAndFeel</code>
241 */
242 public Accessible getAccessibleChild(JComponent a, int b) {
243 Accessible returnValue =
244 ((ComponentUI) (uis.elementAt(0))).getAccessibleChild(a,b);
245 for (int i = 1; i < uis.size(); i++) {
246 ((ComponentUI) (uis.elementAt(i))).getAccessibleChild(a,b);
247 }
248 return returnValue;
249 }
250}