33import java .util .ArrayList ;
44import java .util .List ;
55
6+ import javafx .event .ActionEvent ;
7+ import javafx .event .EventHandler ;
68import javafx .scene .layout .FlowPane ;
79import javafx .scene .layout .VBox ;
810import javafx .scene .paint .Paint ;
@@ -24,9 +26,13 @@ public class ToggleGroupVBox extends VBox {
2426
2527 public ToggleGroupVBox () {
2628
27- parentToggleHBox .setToggleChangeListener ((ob , oldValue , newValue ) -> {
28- for (ToggleHBox t : childToggleList ) {
29- t .setToggleSelected (parentToggleHBox .isToggleSelected ());
29+ parentToggleHBox .setToggleAction (new EventHandler <ActionEvent >() {
30+
31+ @ Override
32+ public void handle (ActionEvent event ) {
33+ for (ToggleHBox t : childToggleList ) {
34+ t .setToggleSelected (parentToggleHBox .isToggleSelected ());
35+ }
3036 }
3137 });
3238
@@ -52,11 +58,15 @@ public void addChildToggle(String text) {
5258 ToggleHBox childToggleHBox = new ToggleHBox ();
5359 childToggleHBox .setLabelText (text );
5460 childToggleHBox .setToggle (CHILD_TOGGLE_SIZE , CHILD_TOGGLE_COLOR , CHILD_TOGGLE_LINE_COLOR );
55- childToggleHBox .setToggleChangeListener ((ob , oldValue , newValue ) -> {
56- if (childToggleHBox .isToggleSelected ()) {
57- parentToggleHBox .setToggleSelected (true );
58- } else {
59- parentToggleHBox .setToggleSelected (!isAllNotSelected ());
61+ childToggleHBox .setToggleAction (new EventHandler <ActionEvent >() {
62+
63+ @ Override
64+ public void handle (ActionEvent event ) {
65+ if (childToggleHBox .isToggleSelected ()) {
66+ parentToggleHBox .setToggleSelected (true );
67+ } else {
68+ parentToggleHBox .setToggleSelected (!isAllNotSelected ());
69+ }
6070 }
6171 });
6272
@@ -73,6 +83,7 @@ public void addChildToggle(String text) {
7383 public void setSelected (String alias , boolean isSelected ) {
7484 childToggleList .stream ().filter (child -> child .getLabelText ().equals (alias ))
7585 .forEach (child -> child .setToggleSelected (isSelected ));
86+ parentToggleHBox .setToggleSelected (!isAllNotSelected ());
7687 }
7788
7889 /**
0 commit comments