< prev index next >

modules/javafx.controls/src/test/java/test/javafx/scene/control/MenuButtonTest.java

Print this page




 270 
 271         MenuButton mb1 = new MenuButton("Sample Text", btn);
 272         mb1.setStyle("-fx-label-padding:0;");
 273         mb1.setContentDisplay(ContentDisplay.GRAPHIC_ONLY);
 274 
 275         MenuButton mb2 = new MenuButton("Sample Text", btn);
 276         mb2.setStyle("-fx-label-padding:100;");
 277         mb2.setContentDisplay(ContentDisplay.GRAPHIC_ONLY);
 278 
 279         Scene scene = new Scene(new Group(mb1, mb2), 400, 400);
 280         Stage stage = new Stage();
 281         stage.setScene(scene);
 282         stage.show();
 283         Toolkit.getToolkit().firePulse();
 284 
 285         // label-padding should not affect GRAPHIC_ONLY MenuButton size
 286         assertEquals(mb1.getWidth(), mb2.getWidth(), 0.00001);
 287         assertEquals(mb1.getHeight(), mb2.getHeight(), 0.00001);
 288     }
 289 
 290     boolean onShowingPass;
 291     boolean onShownPass;
 292     boolean onHidingPass;
 293     boolean onHiddenPass;
 294     @Test public void test_jdk_8175963_showHideEvents() {





 295         MenuItem it1 = new MenuItem("1");
 296         MenuButton mbtn = new MenuButton("MenuButton", null, it1);
 297 

 298         mbtn.addEventHandler(MenuButton.ON_SHOWING, event -> {
 299             assertEquals("event is not of type MenuButton.ON_SHOWING",
 300                 event.getEventType(), MenuButton.ON_SHOWING);
 301             onShowingPass = true;
 302         });
 303         mbtn.addEventHandler(MenuButton.ON_SHOWN, event -> {
 304             assertEquals("event is not of type MenuButton.ON_SHOWN",
 305                 event.getEventType(), MenuButton.ON_SHOWN);
 306             onShownPass = true;
 307         });
 308         mbtn.addEventHandler(MenuButton.ON_HIDING, event -> {
 309             assertEquals("event is not of type MenuButton.ON_HIDING",
 310                 event.getEventType(), MenuButton.ON_HIDING);
 311             onHidingPass = true;
 312         });
 313         mbtn.addEventHandler(MenuButton.ON_HIDDEN, event -> {
 314             assertEquals("event is not of type  MenuButton.ON_HIDDEN",
 315                 event.getEventType(), MenuButton.ON_HIDDEN);
 316             onHiddenPass = true;
 317         });

 318 
 319         mbtn.show();
 320         mbtn.hide();
 321 
 322         assertTrue("OnShowing event not received", onShowingPass);
 323         assertTrue("onShown event not received", onShownPass);
 324         assertTrue("onHiding event not received", onHidingPass);
 325         assertTrue("onHidden event not received", onHiddenPass);

















































 326     }
 327 }


 270 
 271         MenuButton mb1 = new MenuButton("Sample Text", btn);
 272         mb1.setStyle("-fx-label-padding:0;");
 273         mb1.setContentDisplay(ContentDisplay.GRAPHIC_ONLY);
 274 
 275         MenuButton mb2 = new MenuButton("Sample Text", btn);
 276         mb2.setStyle("-fx-label-padding:100;");
 277         mb2.setContentDisplay(ContentDisplay.GRAPHIC_ONLY);
 278 
 279         Scene scene = new Scene(new Group(mb1, mb2), 400, 400);
 280         Stage stage = new Stage();
 281         stage.setScene(scene);
 282         stage.show();
 283         Toolkit.getToolkit().firePulse();
 284 
 285         // label-padding should not affect GRAPHIC_ONLY MenuButton size
 286         assertEquals(mb1.getWidth(), mb2.getWidth(), 0.00001);
 287         assertEquals(mb1.getHeight(), mb2.getHeight(), 0.00001);
 288     }
 289 
 290     int onShowingPass;
 291     int onShownPass;
 292     int onHidingPass;
 293     int onHiddenPass;
 294     // Test for JDK-8175963
 295     @Test public void test_jdk_addOnShowHideEvents() {
 296         onShowingPass = 0;
 297         onShownPass = 0;
 298         onHidingPass = 0;
 299         onHiddenPass = 0;
 300         MenuItem it1 = new MenuItem("1");
 301         MenuButton mbtn = new MenuButton("MenuButton", null, it1);
 302 
 303         for (int i = 0; i < 5; ++i) {
 304             mbtn.addEventHandler(MenuButton.ON_SHOWING, event -> {
 305                 assertEquals("event is not of type MenuButton.ON_SHOWING",
 306                     event.getEventType(), MenuButton.ON_SHOWING);
 307                 onShowingPass++;
 308             });
 309             mbtn.addEventHandler(MenuButton.ON_SHOWN, event -> {
 310                 assertEquals("event is not of type MenuButton.ON_SHOWN",
 311                     event.getEventType(), MenuButton.ON_SHOWN);
 312                 onShownPass++;
 313             });
 314             mbtn.addEventHandler(MenuButton.ON_HIDING, event -> {
 315                 assertEquals("event is not of type MenuButton.ON_HIDING",
 316                     event.getEventType(), MenuButton.ON_HIDING);
 317                 onHidingPass++;
 318             });
 319             mbtn.addEventHandler(MenuButton.ON_HIDDEN, event -> {
 320                 assertEquals("event is not of type  MenuButton.ON_HIDDEN",
 321                     event.getEventType(), MenuButton.ON_HIDDEN);
 322                 onHiddenPass++;
 323             });
 324         }
 325 
 326         mbtn.show();
 327         mbtn.hide();
 328 
 329         assertTrue("MenuButton.ON_SHOWING event should be received 5 times. but received: "
 330                     + onShowingPass + " times.", (5 == onShowingPass));
 331         assertTrue("MenuButton.ON_SHOWN event should be received 5 times. but received: "
 332                     + onShownPass + " times.", (5 == onShownPass));
 333         assertTrue("MenuButton.ON_HIDING event should be received 5 times. but received: "
 334                     + onHidingPass + " times.", (5 == onHidingPass));
 335         assertTrue("MenuButton.ON_HIDDEN event should be received 5 times. but received: "
 336                     + onHiddenPass + " times.", (5 == onHiddenPass));
 337     }
 338 
 339 
 340     // Test for JDK-8177633
 341     @Test public void test_jdk_setOnShowHideEvents() {
 342         onShowingPass = 0;
 343         onShownPass = 0;
 344         onHidingPass = 0;
 345         onHiddenPass = 0;
 346         MenuItem it1 = new MenuItem("1");
 347         MenuButton mbtn = new MenuButton("MenuButton", null, it1);
 348         for (int i = 0; i < 5; ++i) {
 349             mbtn.setOnShowing(event -> {
 350                 assertEquals("event is not of type MenuButton.ON_SHOWING",
 351                     event.getEventType(), MenuButton.ON_SHOWING);
 352                 onShowingPass++;;
 353             });
 354             mbtn.setOnShown(event -> {
 355                 assertEquals("event is not of type MenuButton.ON_SHOWN",
 356                     event.getEventType(), MenuButton.ON_SHOWN);
 357                 onShownPass++;
 358             });
 359             mbtn.setOnHiding(event -> {
 360                 assertEquals("event is not of type MenuButton.ON_HIDING",
 361                     event.getEventType(), MenuButton.ON_HIDING);
 362                 onHidingPass++;
 363             });
 364             mbtn.setOnHidden(event -> {
 365                 assertEquals("event is not of type MenuButton.ON_HIDDEN",
 366                     event.getEventType(), MenuButton.ON_HIDDEN);
 367                 onHiddenPass++;
 368             });
 369         }
 370 
 371         mbtn.show();
 372         mbtn.hide();
 373 
 374         assertTrue("MenuButton.ON_SHOWING event should be received only once. but received: "
 375                     + onShowingPass + " times.", (1 == onShowingPass));
 376         assertTrue("MenuButton.ON_SHOWN event should be received only once. but received: "
 377                     + onShownPass + " times.", (1 == onShownPass));
 378         assertTrue("MenuButton.ON_HIDING event should be received only once. but received: "
 379                     + onHidingPass + " times.", (1 == onHidingPass));
 380         assertTrue("MenuButton.ON_HIDDEN event should be received only once. but received: "
 381                     + onHiddenPass + " times.", (1 == onHiddenPass));
 382     }
 383 }
< prev index next >