Search in sources :

Example 1 with JFXHamburger

use of com.jfoenix.controls.JFXHamburger in project JFoenix by jfoenixadmin.

the class HamburgerSlideCloseTransition method starting.

@Override
protected void starting() {
    super.starting();
    if (node.getParent() instanceof JFXRippler) {
        JFXRippler rippler = (JFXRippler) node.getParent();
        BorderPane p = new BorderPane(node);
        p.setMaxWidth(((JFXHamburger) node).getWidth());
        p.setMinWidth(((JFXHamburger) node).getWidth());
        p.addEventHandler(MouseEvent.ANY, (event) -> {
            if (!event.isConsumed()) {
                event.consume();
                node.fireEvent(event);
            }
        });
        rippler.setControl(p);
    }
    if (this.getRate() == -1) {
        ((JFXHamburger) node).getChildren().get(1).setVisible(true);
    }
}
Also used : BorderPane(javafx.scene.layout.BorderPane) JFXRippler(com.jfoenix.controls.JFXRippler) JFXHamburger(com.jfoenix.controls.JFXHamburger)

Example 2 with JFXHamburger

use of com.jfoenix.controls.JFXHamburger in project JFoenix by jfoenixadmin.

the class HamburgerDemo method start.

@Override
public void start(Stage stage) {
    FlowPane main = new FlowPane();
    main.setVgap(20);
    main.setHgap(20);
    JFXHamburger h1 = new JFXHamburger();
    HamburgerSlideCloseTransition burgerTask = new HamburgerSlideCloseTransition(h1);
    burgerTask.setRate(-1);
    h1.addEventHandler(MouseEvent.MOUSE_PRESSED, (e) -> {
        burgerTask.setRate(burgerTask.getRate() * -1);
        burgerTask.play();
    });
    JFXHamburger h2 = new JFXHamburger();
    HamburgerBasicCloseTransition burgerTask1 = new HamburgerBasicCloseTransition(h2);
    burgerTask1.setRate(-1);
    h2.addEventHandler(MouseEvent.MOUSE_PRESSED, (e) -> {
        burgerTask1.setRate(burgerTask1.getRate() * -1);
        burgerTask1.play();
    });
    JFXHamburger h3 = new JFXHamburger();
    HamburgerBackArrowBasicTransition burgerTask2 = new HamburgerBackArrowBasicTransition(h3);
    burgerTask2.setRate(-1);
    h3.addEventHandler(MouseEvent.MOUSE_PRESSED, (e) -> {
        burgerTask2.setRate(burgerTask2.getRate() * -1);
        burgerTask2.play();
    });
    JFXHamburger h4 = new JFXHamburger();
    HamburgerNextArrowBasicTransition burgerTask3 = new HamburgerNextArrowBasicTransition(h4);
    burgerTask3.setRate(-1);
    h4.addEventHandler(MouseEvent.MOUSE_PRESSED, (e) -> {
        burgerTask3.setRate(burgerTask3.getRate() * -1);
        burgerTask3.play();
    });
    main.getChildren().add(h1);
    main.getChildren().add(h2);
    main.getChildren().add(h3);
    main.getChildren().add(h4);
    StackPane pane = new StackPane();
    pane.getChildren().add(main);
    StackPane.setMargin(main, new Insets(60));
    pane.setStyle("-fx-background-color:WHITE");
    final Scene scene = new Scene(pane, 400, 200);
    scene.getStylesheets().add(HamburgerDemo.class.getResource("/resources/css/jfoenix-components.css").toExternalForm());
    stage.setTitle("JFX Burgers Demo :) ");
    stage.setScene(scene);
    stage.setResizable(false);
    stage.show();
}
Also used : HamburgerSlideCloseTransition(com.jfoenix.transitions.hamburger.HamburgerSlideCloseTransition) Insets(javafx.geometry.Insets) HamburgerBackArrowBasicTransition(com.jfoenix.transitions.hamburger.HamburgerBackArrowBasicTransition) JFXHamburger(com.jfoenix.controls.JFXHamburger) HamburgerNextArrowBasicTransition(com.jfoenix.transitions.hamburger.HamburgerNextArrowBasicTransition) FlowPane(javafx.scene.layout.FlowPane) HamburgerBasicCloseTransition(com.jfoenix.transitions.hamburger.HamburgerBasicCloseTransition) Scene(javafx.scene.Scene) StackPane(javafx.scene.layout.StackPane)

Example 3 with JFXHamburger

use of com.jfoenix.controls.JFXHamburger in project JFoenix by jfoenixadmin.

the class PopupDemo method start.

@Override
public void start(Stage primaryStage) throws Exception {
    JFXHamburger show = new JFXHamburger();
    show.setPadding(new Insets(10, 5, 10, 5));
    JFXRippler r = new JFXRippler(show, RipplerMask.CIRCLE, RipplerPos.BACK);
    JFXListView<Label> list = new JFXListView<Label>();
    for (int i = 1; i < 5; i++) list.getItems().add(new Label("Item " + i));
    AnchorPane container = new AnchorPane();
    container.getChildren().add(r);
    AnchorPane.setLeftAnchor(r, 200.0);
    AnchorPane.setTopAnchor(r, 210.0);
    StackPane main = new StackPane();
    main.getChildren().add(container);
    JFXPopup popup = new JFXPopup(list);
    r.setOnMouseClicked((e) -> popup.show(r, PopupVPosition.TOP, PopupHPosition.LEFT));
    final Scene scene = new Scene(main, 800, 800);
    scene.getStylesheets().add(PopupDemo.class.getResource("/resources/css/jfoenix-components.css").toExternalForm());
    primaryStage.setTitle("JFX Popup Demo");
    primaryStage.setScene(scene);
    primaryStage.setResizable(false);
    primaryStage.show();
}
Also used : JFXPopup(com.jfoenix.controls.JFXPopup) Insets(javafx.geometry.Insets) JFXRippler(com.jfoenix.controls.JFXRippler) JFXHamburger(com.jfoenix.controls.JFXHamburger) JFXListView(com.jfoenix.controls.JFXListView) Label(javafx.scene.control.Label) Scene(javafx.scene.Scene) AnchorPane(javafx.scene.layout.AnchorPane) StackPane(javafx.scene.layout.StackPane)

Example 4 with JFXHamburger

use of com.jfoenix.controls.JFXHamburger in project JFoenix by jfoenixadmin.

the class AnimationDemo method start.

@Override
public void start(Stage stage) {
    FlowPane main = new FlowPane();
    main.setVgap(20);
    main.setHgap(20);
    StackPane colorPane = new StackPane();
    colorPane.setStyle("-fx-background-radius:50; -fx-min-width:50; -fx-min-height:50;");
    colorPane.getStyleClass().add("red-500");
    main.getChildren().add(colorPane);
    StackPane colorPane1 = new StackPane();
    colorPane1.setStyle("-fx-background-radius:50; -fx-min-width:50; -fx-min-height:50;");
    colorPane1.getStyleClass().add("blue-500");
    StackPane placeHolder = new StackPane(colorPane1);
    placeHolder.setStyle("-fx-background-radius:50; -fx-min-width:50; -fx-min-height:50;");
    main.getChildren().add(placeHolder);
    StackPane colorPane2 = new StackPane();
    colorPane2.setStyle("-fx-background-radius:50; -fx-min-width:50; -fx-min-height:50;");
    colorPane2.getStyleClass().add("green-500");
    main.getChildren().add(colorPane2);
    StackPane colorPane3 = new StackPane();
    colorPane3.setStyle("-fx-background-radius:50; -fx-min-width:50; -fx-min-height:50;");
    colorPane3.getStyleClass().add("yellow-500");
    main.getChildren().add(colorPane3);
    StackPane colorPane4 = new StackPane();
    colorPane4.setStyle("-fx-background-radius:50; -fx-min-width:50; -fx-min-height:50;");
    colorPane4.getStyleClass().add("purple-500");
    main.getChildren().add(colorPane4);
    StackPane wizard = new StackPane();
    wizard.getChildren().add(main);
    StackPane.setMargin(main, new Insets(100));
    wizard.setStyle("-fx-background-color:WHITE");
    StackPane nextPage = new StackPane();
    StackPane newPlaceHolder = new StackPane();
    newPlaceHolder.setStyle("-fx-background-radius:50; -fx-max-width:50; -fx-max-height:50;");
    nextPage.getChildren().add(newPlaceHolder);
    StackPane.setAlignment(newPlaceHolder, Pos.TOP_LEFT);
    JFXHamburger h4 = new JFXHamburger();
    h4.setMaxSize(40, 40);
    HamburgerBackArrowBasicTransition burgerTask3 = new HamburgerBackArrowBasicTransition(h4);
    burgerTask3.setRate(-1);
    h4.addEventHandler(MouseEvent.MOUSE_PRESSED, (e) -> {
        burgerTask3.setRate(burgerTask3.getRate() * -1);
        burgerTask3.play();
    });
    nextPage.getChildren().add(h4);
    StackPane.setAlignment(h4, Pos.TOP_LEFT);
    StackPane.setMargin(h4, new Insets(10));
    JFXNodesAnimation<FlowPane, StackPane> animation = new JFXNodesAnimation<FlowPane, StackPane>(main, nextPage) {

        private Pane tempPage = new Pane();

        double x = 0;

        double y = 0;

        @Override
        public void init() {
            nextPage.setOpacity(0);
            wizard.getChildren().add(tempPage);
            wizard.getChildren().add(nextPage);
            x = colorPane1.localToScene(colorPane1.getBoundsInLocal()).getMinX();
            y = colorPane1.localToScene(colorPane1.getBoundsInLocal()).getMinY();
            tempPage.getChildren().add(colorPane1);
            colorPane1.setTranslateX(x);
            colorPane1.setTranslateY(y);
        }

        @Override
        public void end() {
        }

        @Override
        public Animation animateSharedNodes() {
            return new Timeline();
        }

        @Override
        public Animation animateExit() {
            return new Timeline(new KeyFrame(Duration.millis(300), new KeyValue(main.opacityProperty(), 0, Interpolator.EASE_BOTH)), new KeyFrame(Duration.millis(520), new KeyValue(colorPane1.translateXProperty(), 0, Interpolator.EASE_BOTH), new KeyValue(colorPane1.translateYProperty(), 0, Interpolator.EASE_BOTH)), new KeyFrame(Duration.millis(200), new KeyValue(colorPane1.scaleXProperty(), 1, Interpolator.EASE_BOTH), new KeyValue(colorPane1.scaleYProperty(), 1, Interpolator.EASE_BOTH)), new KeyFrame(Duration.millis(1000), new KeyValue(colorPane1.scaleXProperty(), 40, Interpolator.EASE_BOTH), new KeyValue(colorPane1.scaleYProperty(), 40, Interpolator.EASE_BOTH)));
        }

        @Override
        public Animation animateEntrance() {
            return new Timeline(new KeyFrame(Duration.millis(320), new KeyValue(nextPage.opacityProperty(), 1, Interpolator.EASE_BOTH)));
        }
    };
    colorPane1.setOnMouseClicked((click) -> {
        animation.animate();
    });
    //		wizard.getChildren().add(nextPage);
    final Scene scene = new Scene(wizard, 800, 200);
    scene.getStylesheets().add(ButtonDemo.class.getResource("/resources/css/jfoenix-design.css").toExternalForm());
    scene.getStylesheets().add(ButtonDemo.class.getResource("/resources/css/jfoenix-components.css").toExternalForm());
    stage.setTitle("JFX Button Demo");
    stage.setScene(scene);
    stage.show();
}
Also used : Insets(javafx.geometry.Insets) HamburgerBackArrowBasicTransition(com.jfoenix.transitions.hamburger.HamburgerBackArrowBasicTransition) JFXHamburger(com.jfoenix.controls.JFXHamburger) FlowPane(javafx.scene.layout.FlowPane) JFXNodesAnimation(com.jfoenix.animation.JFXNodesAnimation) Scene(javafx.scene.Scene) StackPane(javafx.scene.layout.StackPane) FlowPane(javafx.scene.layout.FlowPane) Pane(javafx.scene.layout.Pane) StackPane(javafx.scene.layout.StackPane)

Aggregations

JFXHamburger (com.jfoenix.controls.JFXHamburger)4 Insets (javafx.geometry.Insets)3 Scene (javafx.scene.Scene)3 StackPane (javafx.scene.layout.StackPane)3 JFXRippler (com.jfoenix.controls.JFXRippler)2 HamburgerBackArrowBasicTransition (com.jfoenix.transitions.hamburger.HamburgerBackArrowBasicTransition)2 FlowPane (javafx.scene.layout.FlowPane)2 JFXNodesAnimation (com.jfoenix.animation.JFXNodesAnimation)1 JFXListView (com.jfoenix.controls.JFXListView)1 JFXPopup (com.jfoenix.controls.JFXPopup)1 HamburgerBasicCloseTransition (com.jfoenix.transitions.hamburger.HamburgerBasicCloseTransition)1 HamburgerNextArrowBasicTransition (com.jfoenix.transitions.hamburger.HamburgerNextArrowBasicTransition)1 HamburgerSlideCloseTransition (com.jfoenix.transitions.hamburger.HamburgerSlideCloseTransition)1 Label (javafx.scene.control.Label)1 AnchorPane (javafx.scene.layout.AnchorPane)1 BorderPane (javafx.scene.layout.BorderPane)1 Pane (javafx.scene.layout.Pane)1