// Add the countdown timer
  @Override
  public VBox getTimerButtonVBox() {
    Button button = new Button();
    button.setText("Start Game!");
    button.setOnAction(
        e -> {
          button.visibleProperty().set(false);
          setGameStarted(true);
        });

    // Puts timer in Vbox
    VBox vb = new VBox(20);
    vb.setAlignment(Pos.CENTER);
    vb.setPrefWidth(getMyScene().getWidth());
    vb.getChildren().add(button);
    vb.setLayoutY(30);

    return vb;
  }
示例#2
0
  /**
   * Creates a default DockTitleBar with captions and dragging behavior.
   *
   * @param dockNode The docking node that requires a title bar.
   */
  public DockTitleBar(DockNode dockNode) {
    this.dockNode = dockNode;

    label = new Label("Dock Title Bar");
    label.textProperty().bind(dockNode.titleProperty());
    label.graphicProperty().bind(dockNode.graphicProperty());

    stateButton = new Button();
    stateButton.setOnAction(
        event -> {
          if (dockNode.isFloating()) {
            dockNode.setMaximized(!dockNode.isMaximized());
          } else {
            dockNode.setFloating(true);
          }
        });

    closeButton = new Button();
    closeButton.setOnAction(event -> dockNode.close());
    closeButton.visibleProperty().bind(dockNode.closableProperty());

    // create a pane that will stretch to make the buttons right aligned
    Pane fillPane = new Pane();
    HBox.setHgrow(fillPane, Priority.ALWAYS);

    getChildren().addAll(label, fillPane, stateButton, closeButton);

    this.addEventHandler(MouseEvent.MOUSE_PRESSED, this);
    this.addEventHandler(MouseEvent.DRAG_DETECTED, this);
    this.addEventHandler(MouseEvent.MOUSE_DRAGGED, this);
    this.addEventHandler(MouseEvent.MOUSE_RELEASED, this);

    label.getStyleClass().add("dock-title-label");
    closeButton.getStyleClass().add("dock-close-button");
    stateButton.getStyleClass().add("dock-state-button");
    this.getStyleClass().add("dock-title-bar");
  }