Skip to Main Content

Java SE (Java Platform, Standard Edition)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Close "x" and minimize "-" on SplitPane

acepsutFeb 18 2014 — edited Feb 18 2014

With this code I add a circle with an "x" to perform remove pane in a SplitPane, and add a circle with a "-" to perform a different divider position.

What I should get is one "x" and one "-", while now I have two "x" and two "-" overlap.

http://s30.postimg.org/sp7g8kaqp/Z896.png

What's wrong with this code?

class CustomTools extends Group { 

    public CustomTools() { 

        final Circle closeButton = CircleBuilder.create() 

                .centerX(5) 

                .centerY(0) 

                .radius(8) 

                .fill(Color.TRANSPARENT)

                .build(); 

        final Text closeText = new Text(1, 3, "x");

        closeText.setFont(Font.font("Comic Sans MS", 12));

        final Circle minimizeButton = CircleBuilder.create() 

                .centerX(5) 

                .centerY(0) 

                .radius(8) 

                .fill(Color.TRANSPARENT)

                .build();

        final Text minimizeText = new Text(1, 3, "-");

        minimizeText.setFont(Font.font("Comic Sans MS", 12));

        closeButton.setOnMouseEntered(new EventHandler<MouseEvent>(){

            @Override

            public void handle(MouseEvent me){

                closeButton.setFill(Color.RED);

                closeButton.setOpacity(0.50);

                closeText.setFill(Color.WHITE);

            }

        });

        closeButton.setOnMouseExited(new EventHandler<MouseEvent>(){

            @Override

            public void handle(MouseEvent me){

                closeButton.setFill(Color.TRANSPARENT);

                closeText.setFill(Color.BLACK);

            }

        });

        minimizeButton.setOnMouseEntered(new EventHandler<MouseEvent>(){

            @Override

            public void handle(MouseEvent me){

                minimizeButton.setFill(Color.RED);

                minimizeButton.setOpacity(0.50);

                minimizeText.setFill(Color.WHITE);

            }

        });

        minimizeButton.setOnMouseExited(new EventHandler<MouseEvent>(){

            @Override

            public void handle(MouseEvent me){

                minimizeButton.setFill(Color.TRANSPARENT);

                minimizeText.setFill(Color.BLACK);

            }

        });

        getChildren().addAll(minimizeButton, minimizeText, closeButton, closeText); 

    } 

}

    for (int i = 0; i < taToolsList.size(); i++) {

        ind = taToolsList.get(i);

        if (ind.getChart().chrt != null) {

            chrt = ind.getChart().chrt;

            final CustomPane testPane = new CustomPane();

            final SplitPane slp = chrt.getIntWindSplitPane();

            Label indicatorLabel = new Label("Indicator");

            indicatorLabel.setLayoutX(10);

            indicatorLabel.setLayoutY(8);

            indicatorLabel.setFont(Font.font("Verdana", 11));

            indicatorLabel.setTextFill(Color.BLACK);

            indicatorLabel.setOpacity(0.8);

            CustomTools ce = new CustomTools();

            ce.setOnMouseClicked(new EventHandler<MouseEvent>() {

                @Override

                public void handle(MouseEvent event) {

                    slp.getItems().remove(testPane);

                }

            });

            CustomTools cm = new CustomTools();

            cm.setOnMouseClicked(new EventHandler<MouseEvent>() {

                @Override

                public void handle(MouseEvent event) {

                    slp.setDividerPosition(0, 0.90);

                }

            });

            testPane.getChildren().addAll(ce, cm, indicatorLabel);

            ce.translateXProperty().bind(testPane.widthProperty().subtract(15));

            ce.setTranslateY(10);

            cm.translateXProperty().bind(testPane.widthProperty().subtract(30));

            cm.setTranslateY(10);

            slp.setDividerPosition(0, 0.70);

            slp.getItems().add(testPane);

        }

    }

Comments

Processing
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Mar 18 2014
Added on Feb 18 2014
3 comments
263 views