public void showEDResult(List<String> path) {
    // intialize alert/dialog to display edit distance result
    Alert alert = new Alert(AlertType.INFORMATION);
    alert.setTitle("Result");
    alert.setHeaderText("Word Path : ");
    alert.initModality(Modality.NONE);
    alert.setResizable(true);

    // create layout for content
    VBox box = new VBox();
    HBox midBox = new HBox();
    box.setPadding(new Insets(35, 0, 35, 0));
    box.setSpacing(35);
    midBox.setSpacing(15);

    Label pathLabel = new Label();
    Label numStepsLabel = new Label("Number of steps : ");
    Label numSteps = new Label();
    Font font = new Font(14);
    pathLabel.setFont(font);
    numStepsLabel.setFont(font);
    numSteps.setFont(Font.font(font.getFamily(), FontWeight.BOLD, 14));

    midBox.getChildren().add(numStepsLabel);
    midBox.getChildren().add(numSteps);
    midBox.setAlignment(Pos.CENTER);

    box.getChildren().add(pathLabel);
    box.getChildren().add(midBox);
    box.setAlignment(Pos.CENTER);
    alert.getDialogPane().setPrefWidth(300);

    // check for path
    if (path != null) {
      numSteps.setText(Integer.toString(path.size() - 1));
      pathLabel.setText(String.join(" -> ", path));

      Text text = new Text(pathLabel.getText());
      text.setFont(font);
      if (text.getLayoutBounds().getWidth() > 200) {
        alert.getDialogPane().setPrefWidth(text.getLayoutBounds().getWidth() + 100);
      }

    }
    // no path found
    else {
      pathLabel.setText("No Path Found.");
      numSteps.setText("N/A");
    }

    // set content and styling
    alert.getDialogPane().setContent(box);
    alert
        .getDialogPane()
        .getStylesheets()
        .add(getClass().getResource("application.css").toExternalForm());
    alert.getDialogPane().getStyleClass().add("myDialog");
    alert.showAndWait();
  }
  public void view(ActionEvent actionEvent) {

    Alert alert = new Alert(Alert.AlertType.INFORMATION, orderArrayToString(), ButtonType.OK);
    alert.setHeaderText("View Order");
    alert.setResizable(true);
    alert.getDialogPane().setPrefWidth(alert.getDialogPane().getWidth() * 2);
    // alert.setContentText(orderString.toString());
    alert.show();
  }
Exemple #3
0
  private String showCreateOrRenameDialog(
      final String title,
      final String headerText,
      final File parent,
      final String name,
      final NameVerifier nameVerifier) {
    final Alert alert = new Alert(AlertType.CONFIRMATION);
    alert.setTitle(title);
    alert.setHeaderText(headerText);

    final GridPane contentContainer = new GridPane();
    contentContainer.setPadding(new Insets(8));
    contentContainer.setHgap(8);
    contentContainer.setVgap(8);

    contentContainer.add(new Label("Parent:"), 0, 0);
    final TextField parentTextField = new TextField();
    parentTextField.setEditable(false);

    parentTextField.setText(parent.getAbsolutePath());
    contentContainer.add(parentTextField, 1, 0);

    contentContainer.add(new Label("Name:"), 0, 1);

    final TextField dirNameTextField = new TextField();
    dirNameTextField.setText(name);
    GridPane.setHgrow(dirNameTextField, Priority.ALWAYS);
    contentContainer.add(dirNameTextField, 1, 1);

    final InvalidationListener updateDisableInvalidationListener =
        (observable) -> {
          final String dirName = dirNameTextField.getText();
          final Node okButton = alert.getDialogPane().lookupButton(ButtonType.OK);
          if (isEmpty(dirName)) okButton.setDisable(true);
          else {
            final boolean nameAcceptable = nameVerifier.isNameAcceptable(dirName);
            okButton.setDisable(!nameAcceptable);
          }
        };
    dirNameTextField.textProperty().addListener(updateDisableInvalidationListener);

    alert.getDialogPane().setContent(contentContainer);
    alert.setOnShowing(
        (event) -> {
          dirNameTextField.requestFocus();
          dirNameTextField.selectAll();
          updateDisableInvalidationListener.invalidated(null);
        });

    if (alert.showAndWait().get() == ButtonType.OK) return dirNameTextField.getText();
    else return null;
  }
  private void selectDestFolder() {
    ListItem item = destDirectoryListView.getSelectionModel().getSelectedItem();

    Alert confirm = new Alert(AlertType.CONFIRMATION);
    confirm.setTitle("ファイル移動");
    confirm.setHeaderText(item.folder.getDestPath() + " に移動します。");
    confirm.setOnCloseRequest(
        e -> {
          if (confirm.getResult() == ButtonType.OK) {
            try {
              item.folder.moveInto(this.targetFiles);
              Alert complete = new Alert(AlertType.INFORMATION);
              complete.setTitle("移動完了");
              complete.setHeaderText(this.targetFiles.size() + " 件のファイルを移動しました。");
              complete.setContentText("移動先:" + item.folder.getDestPath());
              complete.show();
              this.clear();
            } catch (UncheckedIOException ex) {
              Alert error = new Alert(AlertType.ERROR);

              StringWriter sw = new StringWriter();
              PrintWriter pw = new PrintWriter(sw);
              ex.printStackTrace(pw);
              TextArea textArea = new TextArea(sw.toString());

              error.getDialogPane().setExpandableContent(textArea);
              error.setContentText("ファイル保存中にエラーが発生しました。");
              error.show();
            }
          }
        });
    confirm.show();
  }
  private void showDialog(String title, String message, Throwable throwable) {
    Alert alert = new Alert(Alert.AlertType.ERROR);
    alert.setTitle(title);
    alert.setHeaderText(title);
    alert.setContentText(message);
    StringWriter stringWriter = new StringWriter();
    PrintWriter printwriter = new PrintWriter(stringWriter);
    throwable.printStackTrace(printwriter);
    String exceptionText = stringWriter.toString();

    Label label = new Label("The exception stacktrace was:");

    TextArea textArea = new TextArea(exceptionText);
    textArea.setEditable(false);
    textArea.setWrapText(true);

    textArea.setMaxWidth(Double.MAX_VALUE);
    textArea.setMaxHeight(Double.MAX_VALUE);
    GridPane.setVgrow(textArea, Priority.ALWAYS);
    GridPane.setHgrow(textArea, Priority.ALWAYS);

    GridPane expContent = new GridPane();
    expContent.setMaxWidth(Double.MAX_VALUE);
    expContent.add(label, 0, 0);
    expContent.add(textArea, 0, 1);

    alert.getDialogPane().setExpandableContent(expContent);
    alert.showAndWait();
  }
 private Alert getAlert(Exception e, String message) {
   e.printStackTrace();
   Alert alert = new Alert(AlertType.ERROR);
   alert.getDialogPane().setHeaderText("通信エラー");
   alert.getDialogPane().setContentText(message);
   return alert;
 }
  private void invoiceAlert(String message) {
    Alert alert = new Alert(Alert.AlertType.INFORMATION);
    alert.setTitle("Invoice");
    alert.setHeaderText(null);
    alert.setContentText(message);
    alert.getDialogPane().setStyle(" -fx-max-width:500px; -fx-pref-width: 500px;");

    alert.show();
  }
  public void viewOrder() {
    String currentOrder = "";
    int counter = 0;
    for (Item i : order.getOrder()) {
      counter++;
      currentOrder += counter + ". " + i.toString() + "\n";
    }
    Alert alert = new Alert(Alert.AlertType.INFORMATION);
    alert.setTitle("Current Order");
    alert.setHeaderText("Your current order is as follows:");
    alert.setContentText(currentOrder);
    alert.getDialogPane().setStyle(" -fx-max-width:500px; -fx-pref-width: 500px;");

    alert.showAndWait();
  }
  void deletePlaylist() {
    if (interfaceDisabled) return;
    Playlist p = getSelectedPlaylist();
    if (p == null) return;
    Alert alert = new Alert(AlertType.CONFIRMATION);
    ButtonType btYes = new ButtonType(res.getString("yes"), ButtonBar.ButtonData.YES);
    ButtonType btCancel =
        new ButtonType(res.getString("cancel"), ButtonBar.ButtonData.CANCEL_CLOSE);
    alert.getButtonTypes().setAll(btYes, btCancel);
    alert.setTitle(res.getString("delete_playlist"));
    alert.setHeaderText(res.getString("delete_playlist"));
    alert.setContentText(String.format(res.getString("delete_confirm"), p.getTitle()));
    alert.getDialogPane().getStylesheets().add("/styles/dialogs.css");
    ((Stage) alert.getDialogPane().getScene().getWindow()).getIcons().addAll(logoImages);

    Optional<ButtonType> result = alert.showAndWait();
    if (result.get() == btYes) {
      Cache.deletePlaylist(p);
      Platform.runLater(
          () -> {
            updatePlaylists();
          });
    }
  }
  private void showMemoryWarning() {
    Logger.warning("Memory " + (MEMORY_FULL_WARNING_THRESHOLD * 100.0) + "% full.");

    ThreadHelper.runOnFxThread(
        () -> {
          Alert alert = new Alert(AlertType.WARNING);
          alert.setTitle(FxComponent.DEFAULT_RESOURCES.getString("MemoryWarningPane.title"));
          alert.setHeaderText(FxComponent.DEFAULT_RESOURCES.getString("MemoryWarningPane.header"));
          alert.setContentText(
              FxComponent.DEFAULT_RESOURCES.getString("MemoryWarningPane.message"));
          alert.show();
          Stage stage = (Stage) alert.getDialogPane().getScene().getWindow();
          stage.toFront();
          stage.setAlwaysOnTop(true);
        });
  }
Exemple #11
0
 /* Creates an info alert dialog
  * @param string message
  */
 public void createAlert(String str) {
   Alert alert = new Alert(AlertType.INFORMATION);
   Stage stage = (Stage) alert.getDialogPane().getScene().getWindow();
   // Add corner icon
   stage.getIcons().add(new Image(this.getClass().getResource("/icons/server48.png").toString()));
   // Add Stage icon
   alert.setGraphic(new ImageView(this.getClass().getResource("/icons/server256.png").toString()));
   // alert.initOwner(stage);
   alert.setTitle("Mars Simulation Project");
   alert.setHeaderText("Multiplayer Host");
   // if (mainMenu != null) {
   //   alert.initOwner(mainMenu.getStage());
   // }
   alert.setContentText(str);
   alert.show();
 }
  @FXML
  public void onDragDroppedFolder(DragEvent event) {
    Dragboard dragboard = event.getDragboard();

    File folder = dragboard.getFiles().get(0);

    DestinationFolder dest = new DestinationFolder(folder);

    if (this.repository.existsSameFolder(dest)) {
      Alert alert = new Alert(AlertType.ERROR);
      alert.setTitle("エラー");
      alert.setHeaderText("既にフォルダが登録されています。");
      alert.getDialogPane().setContentText(dest.getDestPath());
      alert.show();
    } else {
      TextInputDialog dialog = new TextInputDialog();
      dialog.setTitle("フォルダ追加");
      dialog.setContentText("フォルダ名");
      dialog.setHeaderText(dest.getDestPath());
      dialog.getEditor().setText(dest.getName());

      dialog.setOnCloseRequest(
          e -> {
            TextInputDialog d = (TextInputDialog) e.getTarget();
            String result = d.getResult();

            if (result != null) {
              if (result.isEmpty()) {
                Alert alert = new Alert(AlertType.ERROR);
                alert.setTitle("エラー");
                alert.setHeaderText("フォルダ名に空は指定できません。");
                alert.show();
              } else {
                dest.setName(result);
                this.repository.registerFolder(dest);
                this.destinationFolders = repository.findAll();
                this.refreshDestFolderListView();
              }
            }
          });

      dialog.show();
    }

    event.setDropCompleted(true);
    event.consume();
  }
Exemple #13
0
  @FXML
  private void deleteButtonClicked(final ActionEvent event) {
    final Set<File> selectedFiles = getSelectedFiles();
    if (selectedFiles.isEmpty()) return;

    Alert alert = new Alert(AlertType.CONFIRMATION);
    alert.setTitle("Delete");
    alert.setHeaderText("Delete these files?");

    final VBox contentContainer = new VBox();
    contentContainer.setSpacing(8);

    final Text contentText =
        new Text("The following files and folders are about to be deleted (folders recursively!):");
    contentText.setWrappingWidth(400);
    contentContainer.getChildren().add(contentText);

    final ListView<String> fileListView = new ListView<>();
    for (final File file : selectedFiles) fileListView.getItems().add(file.getAbsolutePath());

    fileListView.setPrefSize(400, 200);
    contentContainer.getChildren().add(fileListView);

    alert.getDialogPane().setContent(contentContainer);

    if (alert.showAndWait().get() == ButtonType.OK) {
      final List<File> notDeletedFiles = new ArrayList<>();
      for (final File file : selectedFiles) {
        file.deleteRecursively();
        if (file.exists()) notDeletedFiles.add(file);
      }
      refresh();

      if (!notDeletedFiles.isEmpty())
        showErrorDialog(
            "Deleting failed!",
            "The selected files (or directories) could be not deleted. They may have been deleted partially, though.");
    }
  }
  @Override
  public void start(Stage stage) {
    try {
      Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml"));

      Scene scene = new Scene(root);

      stage.setScene(scene);
      stage.show();
    } catch (Exception ex) {
      Alert alert = new Alert(Alert.AlertType.ERROR);
      alert.setTitle("Lobo Software");
      alert.setHeaderText("Se ha presentado un error inesperado");
      alert.setContentText("El error técnico se muestra a continuación:");

      StringWriter sw = new StringWriter();
      PrintWriter pw = new PrintWriter(sw);
      ex.printStackTrace(pw);
      String exceptionText = sw.toString();

      TextArea textArea = new TextArea(exceptionText);
      textArea.setEditable(false);
      textArea.setWrapText(true);

      textArea.setMaxWidth(Double.MAX_VALUE);
      textArea.setMaxHeight(Double.MAX_VALUE);
      GridPane.setVgrow(textArea, Priority.ALWAYS);
      GridPane.setHgrow(textArea, Priority.ALWAYS);

      GridPane expContent = new GridPane();
      expContent.setMaxWidth(Double.MAX_VALUE);
      expContent.add(textArea, 0, 1);

      alert.getDialogPane().setExpandableContent(expContent);
      alert.showAndWait();
    }
  }
  public void finishOrder(ActionEvent actionEvent) {
    StringBuilder orderString = new StringBuilder();
    // create new alert
    Alert alert = new Alert(Alert.AlertType.INFORMATION, "", ButtonType.OK);
    // get date
    Date date = new Date();
    DateFormat format1 = new SimpleDateFormat("MM/dd/yy hh:mm:ss a z");
    DateFormat format2 = new SimpleDateFormat("yyMMddhhmmss");
    orderString.append(
        String.format(
            "%s\n\nNumber of line items:%d\n\nItem#/ID/Title/Price/Qty/Disc%%/Subtotal:\n\n%s\n\nOrder Subtotal:$%.2f\n\n"
                + "Tax Rate:\t6%%\n\nTax Amount:$%.2f\n\nOrder Total:$%.2f\n\nThanks for shopping!",
            format1.format(date),
            myOrders.size(),
            orderArrayToString(),
            Order.getRunningTotal(),
            Order.getRunningTotal() * .06,
            Order.getRunningTotal() + Order.getRunningTotal() * .06));

    // print order array
    // print subtotal
    // print 6% tax
    // add tax and generate new total
    // show alert
    // call new order

    alert.setHeaderText("Order Receipt");
    alert.setResizable(true);
    alert.getDialogPane().setPrefWidth(alert.getDialogPane().getWidth() * 2);
    alert.setContentText(orderString.toString());
    alert.show();

    // output transactions.txt
    OpenOption[] options = {
      StandardOpenOption.CREATE, StandardOpenOption.WRITE, StandardOpenOption.APPEND
    };
    Path file = Paths.get("transaction.txt");

    try {
      BufferedWriter writer = Files.newBufferedWriter(file, Charset.defaultCharset(), options);

      int i = 0;
      for (Order order : myOrders) {
        // String[] strArray = order.toString().split(" ");
        // System.out.println(strArray[0] + strArray[1]);
        writer.write(
            String.format(
                "%s, %s, %s, %s, %s, %s, %s, %s\n",
                format2.format(date),
                order.getOrderedBook().getBookID(),
                order.getOrderedBook().getBookTitle(),
                order.getOrderedBook().getPrice(),
                order.getQuantity(),
                order.getDiscount(),
                order.getFinalPrice(),
                format1.format(date)));
      }

      writer.close();
    } catch (IOException e) {
      System.out.println("OOPS");
      e.printStackTrace();
    }

    newOrder(new ActionEvent());
  }