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 */
25 package test.css.controls;
26
27 import com.sun.javafx.collections.ObservableListWrapper;
28 import javafx.css.CssMetaData;
29 import com.sun.javafx.scene.control.skin.CellSkinBase;
30 import com.sun.javafx.scene.control.skin.ColorPickerSkin;
31 import com.sun.javafx.scene.control.skin.PaginationSkin;
32 import com.sun.javafx.scene.control.skin.ProgressIndicatorSkin;
33 import com.sun.javafx.scene.control.skin.TableColumnHeader;
34 import com.sun.javafx.scene.control.skin.TextInputControlSkin;
35 import com.sun.javafx.scene.control.skin.TreeCellSkin;
36 import java.lang.reflect.Constructor;
37 import java.lang.reflect.Method;
38 import java.time.LocalDate;
39 import java.time.Month;
40 import java.util.*;
41 import javafx.application.ConditionalFeature;
42 import javafx.application.Platform;
43 import javafx.beans.property.SimpleObjectProperty;
44 import javafx.beans.value.ObservableValue;
45 import javafx.collections.FXCollections;
46 import javafx.collections.ObservableList;
47 import javafx.css.Styleable;
48 import javafx.geometry.HPos;
49 import javafx.geometry.Pos;
50 import javafx.scene.Node;
51 import javafx.scene.chart.BarChart;
52 import javafx.scene.chart.CategoryAxis;
53 import javafx.scene.chart.LineChart;
54 import javafx.scene.chart.NumberAxis;
55 import javafx.scene.chart.PieChart;
56 import javafx.scene.chart.XYChart;
57 import javafx.scene.control.Accordion;
58 import javafx.scene.control.Button;
59 import javafx.scene.control.ButtonBuilder;
60 import javafx.scene.control.CheckBox;
61 import javafx.scene.control.CheckBoxBuilder;
62 import javafx.scene.control.ChoiceBox;
63 import javafx.scene.control.ColorPicker;
64 import javafx.scene.control.ComboBox;
65 import javafx.scene.control.Control;
66 import javafx.scene.control.DatePicker;
67 import javafx.scene.control.Hyperlink;
68 import javafx.scene.control.HyperlinkBuilder;
69 import javafx.scene.control.Label;
70 import javafx.scene.control.LabelBuilder;
71 import javafx.scene.control.ListView;
72 import javafx.scene.control.Menu;
73 import javafx.scene.control.MenuBar;
74 import javafx.scene.control.MenuItem;
75 import javafx.scene.control.Pagination;
76 import javafx.scene.control.PasswordField;
77 import javafx.scene.control.PasswordFieldBuilder;
78 import javafx.scene.control.ProgressBar;
79 import javafx.scene.control.ProgressBarBuilder;
80 import javafx.scene.control.ProgressIndicator;
81 import javafx.scene.control.ProgressIndicatorBuilder;
82 import javafx.scene.control.RadioButton;
83 import javafx.scene.control.RadioButtonBuilder;
84 import javafx.scene.control.ScrollBar;
85 import javafx.scene.control.ScrollBarBuilder;
86 import javafx.scene.control.ScrollPane;
87 import javafx.scene.control.Separator;
88 import javafx.scene.control.SeparatorBuilder;
89 import javafx.scene.control.Slider;
90 import javafx.scene.control.SliderBuilder;
91 import javafx.scene.control.SplitMenuButton;
92 import javafx.scene.control.SplitMenuButtonBuilder;
93 import javafx.scene.control.SplitPane;
94 import javafx.scene.control.SplitPaneBuilder;
95 import javafx.scene.control.Tab;
96 import javafx.scene.control.TabPane;
97 import javafx.scene.control.TableColumn;
98 import javafx.scene.control.TableColumn.CellDataFeatures;
99 import javafx.scene.control.TableView;
100 import javafx.scene.control.TextField;
101 import javafx.scene.control.TextFieldBuilder;
102 import javafx.scene.control.TitledPane;
103 import javafx.scene.control.ToggleButton;
104 import javafx.scene.control.ToggleButtonBuilder;
105 import javafx.scene.control.ToolBar;
106 import javafx.scene.control.TreeItem;
107 import javafx.scene.control.TreeView;
108 import javafx.scene.image.Image;
109 import javafx.scene.image.ImageView;
110 import javafx.scene.layout.FlowPane;
111 import javafx.scene.layout.HBox;
112 import javafx.scene.layout.StackPaneBuilder;
113 import javafx.scene.layout.TilePane;
114 import javafx.scene.layout.VBox;
115 import javafx.scene.paint.Color;
116 import javafx.scene.shape.Circle;
117 import javafx.scene.shape.Rectangle;
118 import javafx.scene.text.Text;
119 import javafx.util.Callback;
120 import javafx.util.StringConverter;
121 import java.time.format.DateTimeFormatter;
122 import java.time.format.DateTimeFormatterBuilder;
123
124 /**
125 *
126 * @author sergey.lugovoy@oracle.com
127 */
128 public enum ControlPage {
129 Accordions(Accordion.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
130 public Node createControl() {
131 TitledPane pane1 = new TitledPane();
132 pane1.setText("title 1\nLong text long text");
133 pane1.setContent(new Rectangle(100, 40, Color.SKYBLUE));
134 pane1.setFocusTraversable(false);
135 TitledPane pane2 = new TitledPane();
136 pane2.setText("title 2\nLong text long text");
137 pane2.setContent(new Rectangle(100, 40, Color.BLUEVIOLET));
138 Accordion acc = new Accordion();
139 acc.getPanes().addAll(pane1, pane2);
140 acc.setExpandedPane(pane2);
141 pane2.setAnimated(false);
142 pane2.setFocusTraversable(false);
143 acc.setFocusTraversable(false);
144 return acc;
145 }
146 }, 200), Buttons(Button.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
147 public Control createControl() {
148 return ButtonBuilder.create().text("Button the first line" + "\nthe sec long line" + "\nthe third line").focusTraversable(false).graphic(new Rectangle(10, 10, Color.RED)).build();
149 }
150 }, 200, 100), ChoiceBoxes(ChoiceBox.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
151 public Control createControl() {
152 return new ChoiceBox() {
153 {
154 getItems().addAll(Arrays.asList("one", "two", "three"));
155 this.getSelectionModel().select(0);
156 setFocusTraversable(false);
157 }
158 };
159 }
160 }), CheckBoxes(CheckBox.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
161 public Control createControl() {
162 return CheckBoxBuilder.create().text("Check box the first line" + "\nthe sec long line" + "\nthe third line").graphic(new Rectangle(20, 20, Color.web("lightblue"))).focusTraversable(false).build();
163 }
164 }, 200, 100), ComboBoxes(ComboBox.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
165 @Override
166 public Control createControl() {
167 return new ComboBox() {
168 {
169 getItems().addAll(Arrays.asList("one", "two", "three"));
170 getSelectionModel().select(0);
171 setFocusTraversable(false);
172 }
173 };
174 }
175 }), Hyperlinks(Hyperlink.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
176 public Control createControl() {
177 return HyperlinkBuilder.create().text("Hyperlink the first line" + "\nthe sec long line" + "\nthe third line").focusTraversable(false).graphic(new Circle(10, Color.BLUE)).build();
178 }
179 }, 200, 100), Labels(new ArrayList<CssMetaData<? extends Styleable, ?>>(Label.getClassCssMetaData()) {
180 {
181 addAll(Text.getClassCssMetaData());
182 }
183 }, new ControlsCSSApp.ControlFactory() {
184 public Control createControl() {
185 return LabelBuilder.create().text("Label the first line" + "\nthe sec longlong line" + "\nthe third line").focusTraversable(false).graphic(new Rectangle(20, 20, Color.web("lightblue"))).build();
186 }
187 }, 200), ListViews(ListView.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
188 public Node createControl() {
189 ListView list = new ListView();
190 ObservableListWrapper<String> items = new ObservableListWrapper<String>(Arrays.asList("One", "Two", "Three", "Four", "Five", "Six", "long line long line long line long line"));
191 list.setItems(items);
192 list.setPrefWidth(100);
193 list.setPrefHeight(100);
194 list.setFocusTraversable(false);
195 return list;
196 }
197 }, 150), PasswordFields(PasswordField.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
198 public Control createControl() {
199 return PasswordFieldBuilder.create().promptText("Password box the first line" + "\nthe sec long line" + "\nthe third line").focusTraversable(false).build();
200 }
201 }), PressedToggleButtons(ToggleButton.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
202 public Control createControl() {
203 return ToggleButtonBuilder.create().selected(true).text("Button the first line" + "\nthe sec long line" + "\nthe third line").focusTraversable(false).graphic(new Rectangle(10, 10, Color.RED)).build();
204 }
205 }, 200, 120), ProgressIndicators(new ArrayList<CssMetaData<? extends Styleable, ?>>(ProgressIndicator.getClassCssMetaData()) {
206 {
207 addAll(ProgressIndicatorSkin.getClassCssMetaData());
208 }
209 }, new ControlsCSSApp.ControlFactory() {
210 public Node createControl() {
211 return ProgressIndicatorBuilder.create().progress(0.85).prefHeight(100).prefWidth(100).focusTraversable(false).build();
212 }
213 }), ProgressBars(ProgressBar.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
214 public Node createControl() {
215 return ProgressBarBuilder.create().progress(0.25).focusTraversable(false).build();
216 }
217 }, 200, 100), RadioButtons(RadioButton.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
218 public Control createControl() {
219 return RadioButtonBuilder.create().text("Radio the first line" + "\nthe sec long line" + "\nthe third line").graphic(new Rectangle(20, 20, Color.web("lightblue"))).focusTraversable(false).build();
220 }
221 }, 200, 100), TextFields(new ArrayList<CssMetaData<? extends Styleable, ?>>(TextField.getClassCssMetaData()) {
222 {
223 addAll(TextInputControlSkin.getClassCssMetaData());
224 }
225 }, new ControlsCSSApp.ControlFactory() {
226 public Control createControl() {
227 return TextFieldBuilder.create().text("Text box the first line" + "\nthe sec long line" + "\nthe third line").focusTraversable(false).build();
228 }
229 }), Sliders(Slider.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
230 public Control createControl() {
231 return SliderBuilder.create().min(0).max(100).value(20).focusTraversable(false).build();
232 }
233 }, 200), Separators(Separator.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
234 public Control createControl() {
235 Separator sep = SeparatorBuilder.create().halignment(HPos.CENTER).build();
236 sep.setPrefWidth(80);
237 return sep;
238 }
239 }, 150), ScrollBars(ScrollBar.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
240 public Control createControl() {
241 return ScrollBarBuilder.create().value(45).min(0).max(100).focusTraversable(false).build();
242 }
243 }, 150), ScrollPanes(ScrollPane.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
244 public Node createControl() {
245 ScrollPane pane = new ScrollPane();
246 HBox hbox = new HBox(30);
247 VBox vbox1 = new VBox(10);
248 vbox1.getChildren().addAll(new Label("one"), new Button("two"), new CheckBox("three"), new RadioButton("four"), new Label("five"));
249 VBox vbox2 = new VBox(10);
250 vbox2.getChildren().addAll(new Label("one"), new Button("two"), new CheckBox("three"), new RadioButton("four"), new Label("five"));
251 hbox.getChildren().addAll(vbox1, vbox2);
252 pane.setContent(hbox);
253 pane.setFocusTraversable(false);
254 return pane;
255 }
256 }, 150), UnPressedToggleButtons(ToggleButton.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
257 public Control createControl() {
258 return ToggleButtonBuilder.create().selected(false).text("Button the first line" + "\nthe sec long line" + "\nthe third line").focusTraversable(false).graphic(new Rectangle(10, 10, Color.RED)).build();
259 }
260 }, 200, 120), Toolbars(ToolBar.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
261 public Node createControl() {
262 ToolBar toolbar = new ToolBar();
263 toolbar.getItems().addAll(new Button("One"), new Button("Two"), new Separator(), SplitMenuButtonBuilder.create().text("three").build());
264 toolbar.setFocusTraversable(false);
265 return toolbar;
266 }
267 }, 250, 150), Menubars(MenuBar.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
268 public Node createControl() {
269 MenuBar menubar = new MenuBar();
270 Menu firstMenu = new Menu("File");
271 MenuItem firstMenuFirstItem = new MenuItem("Save");
272 MenuItem firstMenuSecondItem = new MenuItem("Open");
273 MenuItem firstMenuThirdItem = new MenuItem("Exit");
274 firstMenu.getItems().addAll(firstMenuFirstItem, firstMenuSecondItem, firstMenuThirdItem);
275 Menu secondMenu = new Menu("Edit");
276 MenuItem secondMenuFirstItem = new MenuItem("Undo");
277 MenuItem secondMenuSecondItem = new MenuItem("Cut");
278 MenuItem secondMenuThirdItem = new MenuItem("Copy");
279 secondMenu.getItems().addAll(secondMenuFirstItem, secondMenuSecondItem, secondMenuThirdItem);
280 Menu thirdMenu = new Menu("Help");
281 MenuItem thirdMenuFirstItem = new MenuItem("Help Contents");
282 MenuItem thirdMenuSecondItem = new MenuItem("About");
283 thirdMenu.getItems().addAll(thirdMenuFirstItem, thirdMenuSecondItem);
284 menubar.getMenus().addAll(firstMenu, secondMenu, thirdMenu);
285 menubar.setFocusTraversable(false);
286 return menubar;
287 }
288 }, 250, 150), SplitMenuButtons(SplitMenuButton.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
289 public Node createControl() {
290 SplitMenuButton smb = SplitMenuButtonBuilder.create().text("Split box the first line" + "\nthe sec long line" + "\nthe third line").items(new MenuItem("Split box the first line" + "\nthe sec long line" + "\nthe third line", new Rectangle(10, 10, Color.BLUE))).graphic(new Rectangle(10, 10, Color.RED)).build();
291 smb.setFocusTraversable(false);
292 return smb;
293 }
294 }, 200, 120), TabPanes(TabPane.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
295 public Node createControl() {
296 TabPane pane = new TabPane();
297 Tab tab = new Tab();
298 tab.setText("tab 1");
299 HBox content1 = new HBox(10);
300 content1.getChildren().addAll(new Button("Button"), new Label("Label"), new Rectangle(40, 40, Color.TOMATO));
301 tab.setContent(content1);
302 Tab tab2 = new Tab();
303 tab2.setText("tab 2");
304 tab2.setContent(new Circle(40, Color.RED));
305 pane.getTabs().addAll(tab, tab2);
306 pane.setFocusTraversable(false);
307 return pane;
308 }
309 }, 200), TitledPanes(TitledPane.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
310 public Node createControl() {
358 }
359 }, new ControlsCSSApp.ControlFactory() {
360 public Node createControl() {
361 TreeItem<String> root = new TreeItem<String>("ROOT", new Rectangle(20, 20, Color.CHOCOLATE));
362 root.setExpanded(true);
363 TreeItem<String> firstBrunch = new TreeItem<String>("brunch 1");
364 firstBrunch.setExpanded(true);
365 firstBrunch.getChildren().addAll(new TreeItem<String>("first item"), new TreeItem<String>("second item", new Rectangle(20, 20, Color.DARKGREY)));
366 root.getChildren().addAll(firstBrunch);
367 TreeItem<String> secondBrunch = new TreeItem<String>("brunch 2");
368 secondBrunch.getChildren().addAll(new TreeItem<String>("first item"), new TreeItem<String>("second item", new Rectangle(20, 20, Color.DARKGREY)));
369 root.getChildren().addAll(secondBrunch);
370 TreeView tree = new TreeView(root);
371 tree.setFocusTraversable(false);
372 tree.setMinSize(147, 127);
373 tree.setPrefSize(160, 140);
374 return tree;
375 }
376 }, 200, 300), SplitPanes(SplitPane.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
377 public Node createControl() {
378 SplitPane pane = SplitPaneBuilder.create().items(StackPaneBuilder.create().children(new Rectangle(40, 40, Color.WHITESMOKE)).build(), StackPaneBuilder.create().children(new Rectangle(40, 40, Color.BLUE)).build(), StackPaneBuilder.create().children(new Rectangle(40, 40, Color.RED)).build()).prefWidth(150).prefHeight(150).build();
379 pane.setDividerPositions(0.33, 0.67);
380 pane.setFocusTraversable(false);
381 return pane;
382 }
383 }, 250), Paginations(new ArrayList<CssMetaData<? extends Styleable, ?>>(Pagination.getClassCssMetaData()) {
384 {
385 addAll(PaginationSkin.getClassCssMetaData());
386 }
387 }, new ControlsCSSApp.ControlFactory() {
388 public Node createControl() {
389 Pagination node = new Pagination(47);
390 node.setMaxPageIndicatorCount(5);
391 node.getStyleClass().add(Pagination.STYLE_CLASS_BULLET);
392 return node;
393 }
394 }, 350, 150), XYChars(new ArrayList<CssMetaData<? extends Styleable, ?>>(LineChart.getClassCssMetaData()) {
395 {
396 addAll(NumberAxis.getClassCssMetaData());
397 }
398 }, new ControlsCSSApp.ControlFactory() {
|
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 */
25 package test.css.controls;
26
27 import com.sun.javafx.collections.ObservableListWrapper;
28 import javafx.scene.control.skin.CellSkinBase;
29 import javafx.scene.control.skin.ColorPickerSkin;
30 import javafx.scene.control.skin.PaginationSkin;
31 import javafx.scene.control.skin.ProgressIndicatorSkin;
32 import javafx.scene.control.skin.TableColumnHeader;
33 import javafx.scene.control.skin.TextInputControlSkin;
34 import javafx.scene.control.skin.TreeCellSkin;
35 import java.lang.reflect.Constructor;
36 import java.lang.reflect.Method;
37 import java.time.LocalDate;
38 import java.time.Month;
39 import java.time.format.DateTimeFormatter;
40 import java.time.format.DateTimeFormatterBuilder;
41 import java.util.*;
42 import javafx.application.ConditionalFeature;
43 import javafx.application.Platform;
44 import javafx.beans.property.SimpleObjectProperty;
45 import javafx.beans.value.ObservableValue;
46 import javafx.collections.FXCollections;
47 import javafx.collections.ObservableList;
48 import javafx.css.CssMetaData;
49 import javafx.css.Styleable;
50 import javafx.geometry.HPos;
51 import javafx.geometry.Pos;
52 import javafx.scene.Node;
53 import javafx.scene.chart.BarChart;
54 import javafx.scene.chart.CategoryAxis;
55 import javafx.scene.chart.LineChart;
56 import javafx.scene.chart.NumberAxis;
57 import javafx.scene.chart.PieChart;
58 import javafx.scene.chart.XYChart;
59 import javafx.scene.control.Accordion;
60 import javafx.scene.control.Button;
61 import javafx.scene.control.CheckBox;
62 import javafx.scene.control.ChoiceBox;
63 import javafx.scene.control.ColorPicker;
64 import javafx.scene.control.ComboBox;
65 import javafx.scene.control.Control;
66 import javafx.scene.control.DatePicker;
67 import javafx.scene.control.Hyperlink;
68 import javafx.scene.control.Label;
69 import javafx.scene.control.ListView;
70 import javafx.scene.control.Menu;
71 import javafx.scene.control.MenuBar;
72 import javafx.scene.control.MenuItem;
73 import javafx.scene.control.Pagination;
74 import javafx.scene.control.PasswordField;
75 import javafx.scene.control.ProgressBar;
76 import javafx.scene.control.ProgressIndicator;
77 import javafx.scene.control.RadioButton;
78 import javafx.scene.control.ScrollBar;
79 import javafx.scene.control.ScrollPane;
80 import javafx.scene.control.Separator;
81 import javafx.scene.control.Slider;
82 import javafx.scene.control.SplitMenuButton;
83 import javafx.scene.control.SplitPane;
84 import javafx.scene.control.Tab;
85 import javafx.scene.control.TabPane;
86 import javafx.scene.control.TableColumn;
87 import javafx.scene.control.TableColumn.CellDataFeatures;
88 import javafx.scene.control.TableView;
89 import javafx.scene.control.TextField;
90 import javafx.scene.control.TitledPane;
91 import javafx.scene.control.ToggleButton;
92 import javafx.scene.control.ToolBar;
93 import javafx.scene.control.TreeItem;
94 import javafx.scene.control.TreeView;
95 import javafx.scene.image.Image;
96 import javafx.scene.image.ImageView;
97 import javafx.scene.layout.FlowPane;
98 import javafx.scene.layout.HBox;
99 import javafx.scene.layout.StackPane;
100 import javafx.scene.layout.TilePane;
101 import javafx.scene.layout.VBox;
102 import javafx.scene.paint.Color;
103 import javafx.scene.shape.Circle;
104 import javafx.scene.shape.Rectangle;
105 import javafx.scene.text.Text;
106 import javafx.util.Callback;
107 import javafx.util.StringConverter;
108
109 /**
110 *
111 * @author sergey.lugovoy@oracle.com
112 */
113 public enum ControlPage {
114 Accordions(Accordion.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
115 public Node createControl() {
116 TitledPane pane1 = new TitledPane();
117 pane1.setText("title 1\nLong text long text");
118 pane1.setContent(new Rectangle(100, 40, Color.SKYBLUE));
119 pane1.setFocusTraversable(false);
120 TitledPane pane2 = new TitledPane();
121 pane2.setText("title 2\nLong text long text");
122 pane2.setContent(new Rectangle(100, 40, Color.BLUEVIOLET));
123 Accordion acc = new Accordion();
124 acc.getPanes().addAll(pane1, pane2);
125 acc.setExpandedPane(pane2);
126 pane2.setAnimated(false);
127 pane2.setFocusTraversable(false);
128 acc.setFocusTraversable(false);
129 return acc;
130 }
131 }, 200), Buttons(Button.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
132 public Control createControl() {
133 Button temp = new Button("Button the first line" + "\nthe sec long line" + "\nthe third line");
134 temp.setFocusTraversable(false);
135 temp.setGraphic(new Rectangle(10, 10, Color.RED));
136 return temp;
137 }
138 }, 200, 100), ChoiceBoxes(ChoiceBox.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
139 public Control createControl() {
140 return new ChoiceBox() {
141 {
142 getItems().addAll(Arrays.asList("one", "two", "three"));
143 this.getSelectionModel().select(0);
144 setFocusTraversable(false);
145 }
146 };
147 }
148 }), CheckBoxes(CheckBox.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
149 public Control createControl() {
150 CheckBox temp = new CheckBox("Check box the first line" + "\nthe sec long line" + "\nthe third line");
151 temp.setFocusTraversable(false);
152 temp.setGraphic(new Rectangle(20, 20, Color.web("lightblue")));
153 return temp;
154 }
155 }, 200, 100), ComboBoxes(ComboBox.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
156 @Override
157 public Control createControl() {
158 return new ComboBox() {
159 {
160 getItems().addAll(Arrays.asList("one", "two", "three"));
161 getSelectionModel().select(0);
162 setFocusTraversable(false);
163 }
164 };
165 }
166 }), Hyperlinks(Hyperlink.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
167 public Control createControl() {
168 Hyperlink temp = new Hyperlink("Hyperlink the first line" + "\nthe sec long line" + "\nthe third line");
169 temp.setFocusTraversable(false);
170 temp.setGraphic(new Circle(10, Color.BLUE));
171 return temp;
172 }
173 }, 200, 100), Labels(new ArrayList<CssMetaData<? extends Styleable, ?>>(Label.getClassCssMetaData()) {
174 {
175 addAll(Text.getClassCssMetaData());
176 }
177 }, new ControlsCSSApp.ControlFactory() {
178 public Control createControl() {
179 Label temp = new Label("Label the first line" + "\nthe sec longlong line" + "\nthe third line");
180 temp.setFocusTraversable(false);
181 temp.setGraphic(new Rectangle(20, 20, Color.web("lightblue")));
182 return temp;
183 }
184 }, 200), ListViews(ListView.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
185 public Node createControl() {
186 ListView list = new ListView();
187 ObservableListWrapper<String> items = new ObservableListWrapper<String>(Arrays.asList("One", "Two", "Three", "Four", "Five", "Six", "long line long line long line long line"));
188 list.setItems(items);
189 list.setPrefWidth(100);
190 list.setPrefHeight(100);
191 list.setFocusTraversable(false);
192 return list;
193 }
194 }, 150), PasswordFields(PasswordField.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
195 public Control createControl() {
196 PasswordField temp = new PasswordField();
197 temp.setPromptText("Password box the first line" + "\nthe sec long line" + "\nthe third line");
198 temp.setFocusTraversable(false);
199 return temp;
200 }
201 }), PressedToggleButtons(ToggleButton.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
202 public Control createControl() {
203 ToggleButton temp = new ToggleButton("Button the first line" + "\nthe sec long line" + "\nthe third line");
204 temp.setSelected(true);
205 temp.setFocusTraversable(false);
206 temp.setGraphic(new Rectangle(10, 10, Color.RED));
207 return temp;
208 }
209 }, 200, 120), ProgressIndicators(new ArrayList<CssMetaData<? extends Styleable, ?>>(ProgressIndicator.getClassCssMetaData()) {
210 {
211 addAll(ProgressIndicatorSkin.getClassCssMetaData());
212 }
213 }, new ControlsCSSApp.ControlFactory() {
214 public Node createControl() {
215 ProgressIndicator temp = new ProgressIndicator(0.85);
216 temp.setPrefSize(100, 100);
217 temp.setFocusTraversable(false);
218 return temp;
219 }
220 }), ProgressBars(ProgressBar.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
221 public Node createControl() {
222 ProgressBar temp = new ProgressBar(0.25);
223 temp.setFocusTraversable(false);
224 return temp;
225 }
226 }, 200, 100), RadioButtons(RadioButton.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
227 public Control createControl() {
228 RadioButton temp = new RadioButton("Radio the first line" + "\nthe sec long line" + "\nthe third line");
229 temp.setFocusTraversable(false);
230 temp.setGraphic(new Rectangle(20, 20, Color.web("lightblue")));
231 return temp;
232 }
233 }, 200, 100), TextFields(new ArrayList<CssMetaData<? extends Styleable, ?>>(TextField.getClassCssMetaData()) {
234 {
235 addAll(TextInputControlSkin.getClassCssMetaData());
236 }
237 }, new ControlsCSSApp.ControlFactory() {
238 public Control createControl() {
239 TextField temp = new TextField("Text box the first line" + "\nthe sec long line" + "\nthe third line");
240 temp.setFocusTraversable(false);
241 return temp;
242 }
243 }), Sliders(Slider.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
244 public Control createControl() {
245 Slider temp = new Slider();
246 temp.setMin(0);
247 temp.setMax(100);
248 temp.setValue(20);
249 temp.setFocusTraversable(false);
250 return temp;
251 }
252 }, 200), Separators(Separator.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
253 public Control createControl() {
254 Separator sep = new Separator();
255 sep.setHalignment(HPos.CENTER);
256 sep.setPrefWidth(80);
257 return sep;
258 }
259 }, 150), ScrollBars(ScrollBar.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
260 public Control createControl() {
261 ScrollBar temp = new ScrollBar();
262 temp.setValue(45);
263 temp.setMin(0);
264 temp.setMax(100);
265 temp.setFocusTraversable(false);
266 return temp;
267 }
268 }, 150), ScrollPanes(ScrollPane.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
269 public Node createControl() {
270 ScrollPane pane = new ScrollPane();
271 HBox hbox = new HBox(30);
272 VBox vbox1 = new VBox(10);
273 vbox1.getChildren().addAll(new Label("one"), new Button("two"), new CheckBox("three"), new RadioButton("four"), new Label("five"));
274 VBox vbox2 = new VBox(10);
275 vbox2.getChildren().addAll(new Label("one"), new Button("two"), new CheckBox("three"), new RadioButton("four"), new Label("five"));
276 hbox.getChildren().addAll(vbox1, vbox2);
277 pane.setContent(hbox);
278 pane.setFocusTraversable(false);
279 return pane;
280 }
281 }, 150), UnPressedToggleButtons(ToggleButton.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
282 public Control createControl() {
283 ToggleButton temp = new ToggleButton("Button the first line" + "\nthe sec long line" + "\nthe third line");
284 temp.setGraphic(new Rectangle(10, 10, Color.RED));
285 temp.setSelected(false);
286 temp.setFocusTraversable(false);
287 return temp;
288 }
289 }, 200, 120), Toolbars(ToolBar.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
290 public Node createControl() {
291 ToolBar toolbar = new ToolBar();
292 SplitMenuButton temp = new SplitMenuButton();
293 temp.setText("three");
294 toolbar.getItems().addAll(new Button("One"), new Button("Two"), new Separator(), temp);
295 toolbar.setFocusTraversable(false);
296 return toolbar;
297 }
298 }, 250, 150), Menubars(MenuBar.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
299 public Node createControl() {
300 MenuBar menubar = new MenuBar();
301 Menu firstMenu = new Menu("File");
302 MenuItem firstMenuFirstItem = new MenuItem("Save");
303 MenuItem firstMenuSecondItem = new MenuItem("Open");
304 MenuItem firstMenuThirdItem = new MenuItem("Exit");
305 firstMenu.getItems().addAll(firstMenuFirstItem, firstMenuSecondItem, firstMenuThirdItem);
306 Menu secondMenu = new Menu("Edit");
307 MenuItem secondMenuFirstItem = new MenuItem("Undo");
308 MenuItem secondMenuSecondItem = new MenuItem("Cut");
309 MenuItem secondMenuThirdItem = new MenuItem("Copy");
310 secondMenu.getItems().addAll(secondMenuFirstItem, secondMenuSecondItem, secondMenuThirdItem);
311 Menu thirdMenu = new Menu("Help");
312 MenuItem thirdMenuFirstItem = new MenuItem("Help Contents");
313 MenuItem thirdMenuSecondItem = new MenuItem("About");
314 thirdMenu.getItems().addAll(thirdMenuFirstItem, thirdMenuSecondItem);
315 menubar.getMenus().addAll(firstMenu, secondMenu, thirdMenu);
316 menubar.setFocusTraversable(false);
317 return menubar;
318 }
319 }, 250, 150), SplitMenuButtons(SplitMenuButton.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
320 public Node createControl() {
321 SplitMenuButton smb = new SplitMenuButton(new MenuItem("Split box the first line" + "\nthe sec long line" + "\nthe third line", new Rectangle(10, 10, Color.BLUE)));
322 smb.setText("Split box the first line" + "\nthe sec long line" + "\nthe third line");
323 smb.setGraphic(new Rectangle(10, 10, Color.RED));
324 smb.setFocusTraversable(false);
325 return smb;
326 }
327 }, 200, 120), TabPanes(TabPane.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
328 public Node createControl() {
329 TabPane pane = new TabPane();
330 Tab tab = new Tab();
331 tab.setText("tab 1");
332 HBox content1 = new HBox(10);
333 content1.getChildren().addAll(new Button("Button"), new Label("Label"), new Rectangle(40, 40, Color.TOMATO));
334 tab.setContent(content1);
335 Tab tab2 = new Tab();
336 tab2.setText("tab 2");
337 tab2.setContent(new Circle(40, Color.RED));
338 pane.getTabs().addAll(tab, tab2);
339 pane.setFocusTraversable(false);
340 return pane;
341 }
342 }, 200), TitledPanes(TitledPane.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
343 public Node createControl() {
391 }
392 }, new ControlsCSSApp.ControlFactory() {
393 public Node createControl() {
394 TreeItem<String> root = new TreeItem<String>("ROOT", new Rectangle(20, 20, Color.CHOCOLATE));
395 root.setExpanded(true);
396 TreeItem<String> firstBrunch = new TreeItem<String>("brunch 1");
397 firstBrunch.setExpanded(true);
398 firstBrunch.getChildren().addAll(new TreeItem<String>("first item"), new TreeItem<String>("second item", new Rectangle(20, 20, Color.DARKGREY)));
399 root.getChildren().addAll(firstBrunch);
400 TreeItem<String> secondBrunch = new TreeItem<String>("brunch 2");
401 secondBrunch.getChildren().addAll(new TreeItem<String>("first item"), new TreeItem<String>("second item", new Rectangle(20, 20, Color.DARKGREY)));
402 root.getChildren().addAll(secondBrunch);
403 TreeView tree = new TreeView(root);
404 tree.setFocusTraversable(false);
405 tree.setMinSize(147, 127);
406 tree.setPrefSize(160, 140);
407 return tree;
408 }
409 }, 200, 300), SplitPanes(SplitPane.getClassCssMetaData(), new ControlsCSSApp.ControlFactory() {
410 public Node createControl() {
411 StackPane sp1 = new StackPane(new Rectangle(40, 40, Color.WHITESMOKE));
412 StackPane sp2 = new StackPane(new Rectangle(40, 40, Color.BLUE));
413 StackPane sp3 = new StackPane(new Rectangle(40, 40, Color.RED));
414 SplitPane pane = new SplitPane(sp1, sp2, sp3);
415 pane.setPrefSize(150, 150);
416 pane.setDividerPositions(0.33, 0.67);
417 pane.setFocusTraversable(false);
418 return pane;
419 }
420 }, 250), Paginations(new ArrayList<CssMetaData<? extends Styleable, ?>>(Pagination.getClassCssMetaData()) {
421 {
422 addAll(PaginationSkin.getClassCssMetaData());
423 }
424 }, new ControlsCSSApp.ControlFactory() {
425 public Node createControl() {
426 Pagination node = new Pagination(47);
427 node.setMaxPageIndicatorCount(5);
428 node.getStyleClass().add(Pagination.STYLE_CLASS_BULLET);
429 return node;
430 }
431 }, 350, 150), XYChars(new ArrayList<CssMetaData<? extends Styleable, ?>>(LineChart.getClassCssMetaData()) {
432 {
433 addAll(NumberAxis.getClassCssMetaData());
434 }
435 }, new ControlsCSSApp.ControlFactory() {
|