/** Opens the filter window to enable filters. */
  public boolean filters() {
    try {
      String filters = "/java_ebook_search/view/FiltersView.fxml";
      FXMLLoader loader = new FXMLLoader();
      loader.setLocation(getClass().getResource(filters));
      AnchorPane page = loader.load();
      Stage dialogStage = new Stage();
      dialogStage.setTitle("Filters");
      dialogStage.initModality(Modality.APPLICATION_MODAL);
      dialogStage.setResizable(false);
      dialogStage.initOwner(searchView.getParent().getScene().getWindow());
      Scene scene = new Scene(page);
      dialogStage.setScene(scene);

      // Set the Filter into the controller.
      FiltersController controller = loader.getController();
      controller.setDialogStage(dialogStage);
      if (null != filter) {
        controller.setFilter(filter);
      }

      // Show the dialog and wait until the user closes it
      dialogStage.showAndWait();
      // Set Filters
      this.filter = controller.getFilter();

      // Trigger search
      search();
      return controller.isOkClicked();
    } catch (IOException | ParseException e) {
      e.printStackTrace();
      return false;
    }
  }
Ejemplo n.º 2
0
  private void setEvents() {
    settingButton.setOnMouseEntered(
        mouseEvent -> {
          controlBntsVBox.setVisible(true);
          controlBntsVBox.getParent().toFront();
          controlBntsVBox.setPrefWidth(Region.USE_COMPUTED_SIZE);
        });

    controlBntsVBox.setOnMouseExited(
        event -> {
          controlBntsVBox.setVisible(false);
          controlBntsVBox.setPrefWidth(0);
        });
  }