62 protected Scene getScene() { 63 Utils.setTitleToStage(stage, "MenuBarTestApp"); 64 return new NewMenuApp.MenuBarScene(); 65 } 66 67 class MenuBarScene extends Scene { 68 69 Pane pane; 70 //MenuBar to be tested. 71 MenuBar testedMenuBar; 72 TabPaneWithControl tabPane; 73 74 public MenuBarScene() { 75 super(new HBox(), 800, 600); 76 77 prepareScene(); 78 } 79 80 private void prepareScene() { 81 pane = new Pane(); 82 testedMenuBar = MenuBarBuilder.create().id(TESTED_MENUBAR_ID).build(); 83 84 PropertiesTable tb = new PropertiesTable(testedMenuBar); 85 PropertyTablesFactory.explorePropertiesList(testedMenuBar, tb); 86 tabPane = new TabPaneWithControl("MenuBar", tb); 87 88 pane.setMinSize(220, 220); 89 pane.setPrefSize(220, 220); 90 pane.setStyle("-fx-border-color : red;"); 91 pane.getChildren().add(testedMenuBar); 92 93 VBox vb = new VBox(); 94 vb.setSpacing(5); 95 96 HBox hb = (HBox) getRoot(); 97 hb.setPadding(new Insets(5, 5, 5, 5)); 98 hb.setStyle("-fx-border-color : green;"); 99 100 Button resetButton = ButtonBuilder.create().id(RESET_BUTTON_ID).text("Reset").build(); 101 resetButton.setOnAction(new EventHandler<ActionEvent>() { 102 103 public void handle(ActionEvent t) { 104 HBox hb = (HBox) getRoot(); 105 hb.getChildren().clear(); 106 prepareScene(); 107 } 108 }); 109 110 final ToggleButton compactStateToggle = new ToggleButton("Compact"); 111 compactStateToggle.setSelected(true); 112 compactStateToggle.selectedProperty().addListener(new ChangeListener<Boolean>() { 113 114 public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) { 115 if (t1) { 116 compactStateToggle.setText("Compact"); 117 pane.setMinSize(220, 220); 118 pane.setPrefSize(220, 220); 119 MenuBarScene.this.getWindow().setWidth(1200); 120 MenuBarScene.this.getWindow().setHeight(700); 121 } else { 122 compactStateToggle.setText("Free"); 123 pane.setMinSize(600, 600); 124 pane.setPrefSize(600, 600); 125 MenuBarScene.this.getWindow().setWidth(800); 126 MenuBarScene.this.getWindow().setHeight(600); 127 } 128 } 129 }); 130 131 vb.getChildren().addAll(new Label("Pane with tested MenuBar"), pane, resetButton, compactStateToggle, getAddTextFieldHbox()); 132 133 hb.getChildren().addAll(vb, tabPane); 134 } 135 136 private HBox getAddTextFieldHbox() { 137 HBox hb = new HBox(); 138 Label lb = new Label("Add Menu at pos"); 139 final TextField tf = TextFieldBuilder.create().id(MENUBAR_ADD_INDEX_TEXT_FIELD_ID).text("0").prefWidth(40).build(); 140 final TextField nameTF = TextFieldBuilder.create().id(MENUBAR_ADD_NAME_TEXT_FIELD_ID).text("Menu").prefWidth(40).build(); 141 142 Button bt = ButtonBuilder.create().text("Add!").id(ADD_MENU_BUTTON_ID).build(); 143 bt.setOnAction(new EventHandler() { 144 145 public void handle(Event t) { 146 Menu menu = new Menu(nameTF.getText()); 147 int index = Integer.parseInt(tf.getText()); 148 (testedMenuBar).getMenus().add(index, menu); 149 tabPane.addPropertiesTable(nameTF.getText(), NodeControllerFactory.createFullController(menu, tabPane)); 150 } 151 }); 152 hb.getChildren().addAll(lb, tf, new Label("named"), nameTF, bt); 153 return hb; 154 } 155 } 156 } | 62 protected Scene getScene() { 63 Utils.setTitleToStage(stage, "MenuBarTestApp"); 64 return new NewMenuApp.MenuBarScene(); 65 } 66 67 class MenuBarScene extends Scene { 68 69 Pane pane; 70 //MenuBar to be tested. 71 MenuBar testedMenuBar; 72 TabPaneWithControl tabPane; 73 74 public MenuBarScene() { 75 super(new HBox(), 800, 600); 76 77 prepareScene(); 78 } 79 80 private void prepareScene() { 81 pane = new Pane(); 82 testedMenuBar = new MenuBar(); 83 testedMenuBar.setId(TESTED_MENUBAR_ID); 84 85 PropertiesTable tb = new PropertiesTable(testedMenuBar); 86 PropertyTablesFactory.explorePropertiesList(testedMenuBar, tb); 87 tabPane = new TabPaneWithControl("MenuBar", tb); 88 89 pane.setMinSize(220, 220); 90 pane.setPrefSize(220, 220); 91 pane.setStyle("-fx-border-color : red;"); 92 pane.getChildren().add(testedMenuBar); 93 94 VBox vb = new VBox(); 95 vb.setSpacing(5); 96 97 HBox hb = (HBox) getRoot(); 98 hb.setPadding(new Insets(5, 5, 5, 5)); 99 hb.setStyle("-fx-border-color : green;"); 100 101 Button resetButton = new Button("Reset"); 102 resetButton.setId(RESET_BUTTON_ID); 103 resetButton.setOnAction(new EventHandler<ActionEvent>() { 104 105 public void handle(ActionEvent t) { 106 HBox hb = (HBox) getRoot(); 107 hb.getChildren().clear(); 108 prepareScene(); 109 } 110 }); 111 112 final ToggleButton compactStateToggle = new ToggleButton("Compact"); 113 compactStateToggle.setSelected(true); 114 compactStateToggle.selectedProperty().addListener(new ChangeListener<Boolean>() { 115 116 public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) { 117 if (t1) { 118 compactStateToggle.setText("Compact"); 119 pane.setMinSize(220, 220); 120 pane.setPrefSize(220, 220); 121 MenuBarScene.this.getWindow().setWidth(1200); 122 MenuBarScene.this.getWindow().setHeight(700); 123 } else { 124 compactStateToggle.setText("Free"); 125 pane.setMinSize(600, 600); 126 pane.setPrefSize(600, 600); 127 MenuBarScene.this.getWindow().setWidth(800); 128 MenuBarScene.this.getWindow().setHeight(600); 129 } 130 } 131 }); 132 133 vb.getChildren().addAll(new Label("Pane with tested MenuBar"), pane, resetButton, compactStateToggle, getAddTextFieldHbox()); 134 135 hb.getChildren().addAll(vb, tabPane); 136 } 137 138 private HBox getAddTextFieldHbox() { 139 HBox hb = new HBox(); 140 Label lb = new Label("Add Menu at pos"); 141 final TextField tf = new TextField("0"); 142 tf.setId(MENUBAR_ADD_INDEX_TEXT_FIELD_ID); 143 tf.setPrefWidth(40); 144 final TextField nameTF = new TextField("Menu"); 145 nameTF.setId(MENUBAR_ADD_NAME_TEXT_FIELD_ID); 146 nameTF.setPrefWidth(40); 147 148 Button bt = new Button("Add!"); 149 bt.setId(ADD_MENU_BUTTON_ID); 150 bt.setOnAction(new EventHandler() { 151 152 public void handle(Event t) { 153 Menu menu = new Menu(nameTF.getText()); 154 int index = Integer.parseInt(tf.getText()); 155 (testedMenuBar).getMenus().add(index, menu); 156 tabPane.addPropertiesTable(nameTF.getText(), NodeControllerFactory.createFullController(menu, tabPane)); 157 } 158 }); 159 hb.getChildren().addAll(lb, tf, new Label("named"), nameTF, bt); 160 return hb; 161 } 162 } 163 } |