Example usage for javafx.scene.control Dialog getDialogPane

List of usage examples for javafx.scene.control Dialog getDialogPane

Introduction

In this page you can find the example usage for javafx.scene.control Dialog getDialogPane.

Prototype

public final DialogPane getDialogPane() 

Source Link

Usage

From source file:spdxedit.license.FileLicenseEditor.java

public static void editConcludedLicense(SpdxFile file, SpdxDocumentContainer container) {
    LicenseEditControl control = new LicenseEditControl(container, file, true);
    if (file.getLicenseConcluded() != null) {
        control.setInitialValue(file.getLicenseConcluded());
    }//from   w w  w .ja  va2  s. co  m

    Dialog<Boolean> dialog = UiUtils.newDialog("Edit License", ButtonType.OK);
    dialog.getDialogPane().setContent(control.getUi());

    dialog.setResultConverter(buttonType -> {
        if (buttonType == ButtonType.OK) {
            return true;
        } else {
            return false;
        }
    });

    boolean acceptChange = dialog.showAndWait().orElse(false);

    if (acceptChange) {
        try {
            file.setLicenseConcluded(control.getValue());
        } catch (InvalidSPDXAnalysisException e) {
            throw new RuntimeException(e);

        }
    }

}

From source file:jlotoprint.MainViewController.java

public static void loadAboutWindow() {

    //setup/* ww  w . j  av  a 2 s. com*/
    Dialog dialog = new Dialog<>();
    dialog.getDialogPane().getButtonTypes().add(ButtonType.CLOSE);
    dialog.setTitle("About JLotoPanel");
    dialog.setHeaderText("JLotoPanel v1.0");
    ImageView icon = new ImageView("file:resources/icon.png");
    icon.setSmooth(true);
    icon.setFitHeight(48.0);
    icon.setFitWidth(48.0);
    dialog.setGraphic(icon);
    dialog.initModality(Modality.APPLICATION_MODAL);
    dialog.initOwner(JLotoPrint.stage.getScene().getWindow());
    //content
    GridPane grid = new GridPane();
    grid.setPadding(new Insets(10, 10, 0, 10));

    //text
    TextArea textArea = new TextArea("For more info, please visit: https://github.com/mbppower/JLotoPanel");
    textArea.setWrapText(true);
    grid.add(textArea, 0, 0);
    dialog.getDialogPane().setContent(grid);

    dialog.showAndWait();
}

From source file:spdxedit.license.FileLicenseEditor.java

public static void extractLicenseFromFile(SpdxFile file, SpdxDocumentContainer container) {

    Dialog dialog = new Dialog();
    dialog.setTitle(Main.APP_TITLE);/*from  www .j av a2s.  c  o  m*/
    dialog.setHeaderText("Extract license");

    ((Stage) dialog.getDialogPane().getScene().getWindow()).getIcons()
            .addAll(UiUtils.ICON_IMAGE_VIEW.getImage());

    dialog.getDialogPane().getButtonTypes().addAll(ButtonType.CANCEL, ButtonType.OK);

    String licenseName = "";
    String licenseText = null;
    String licenseId = "";
    //TODO: Add support for multiple extracted licenses.
    if (file.getLicenseInfoFromFiles() != null && file.getLicenseInfoFromFiles().length > 0) {
        Optional<AnyLicenseInfo> foundExtractedLicense = Arrays.stream(file.getLicenseInfoFromFiles())
                .filter(license -> license instanceof ExtractedLicenseInfo).findFirst();
        if (foundExtractedLicense.isPresent()) {
            licenseName = ((ExtractedLicenseInfo) foundExtractedLicense.get()).getName();
            licenseText = ((ExtractedLicenseInfo) foundExtractedLicense.get()).getExtractedText();
            licenseId = ((ExtractedLicenseInfo) foundExtractedLicense.get()).getLicenseId();

        }
    }

    LicenseExtractControl licenseExtractControl = new LicenseExtractControl(licenseName, licenseText,
            licenseId);

    dialog.getDialogPane().setContent(licenseExtractControl.getUi());
    Optional<ButtonType> result = dialog.showAndWait();

    licenseName = licenseExtractControl.getLicenseName();
    licenseText = licenseExtractControl.getLicenseText();
    licenseId = licenseExtractControl.getLicenseId();

    //No selection
    if (!result.isPresent() || result.get() == ButtonType.CANCEL) {
        return;
    }
    //Omitted data
    if (StringUtils.isBlank(licenseName)) {
        new Alert(Alert.AlertType.ERROR, "License name cannot be blank. Use \"NOASSERTION\" instead",
                ButtonType.OK).showAndWait();
        return;
    }
    if (StringUtils.isBlank(licenseText)) {
        new Alert(Alert.AlertType.ERROR, "License text cannot be blank.", ButtonType.OK).showAndWait();
        return;
    }
    if (StringUtils.isBlank(licenseId)) {
        new Alert(Alert.AlertType.ERROR, "License ID cannot be blank.", ButtonType.OK).showAndWait();
        return;
    }
    //License already extracted
    if (SpdxLogic.findExtractedLicenseByNameAndText(container, licenseName, licenseText).isPresent()) {
        new Alert(Alert.AlertType.WARNING,
                "License " + licenseName + " with the same text has already been extracted.", ButtonType.OK)
                        .showAndWait();
        return;
    }
    //License with ID already exists
    if (SpdxLogic.findExtractedLicenseInfoById(container, licenseId).isPresent()) {
        new Alert(Alert.AlertType.WARNING, "License with ID " + licenseId + " already exists.", ButtonType.OK)
                .showAndWait();
        return;
    }

    SpdxLogic.addExtractedLicenseFromFile(file, container, licenseId, licenseName, licenseText);

}

From source file:cz.lbenda.rcp.DialogHelper.java

/** Create dialog with right icons */
public static <T> Dialog<T> createDialog(Object caller, String iconBaseName) {
    Dialog<T> dialog = new Dialog<>();
    Stage stage = (Stage) dialog.getDialogPane().getScene().getWindow();
    if (iconBaseName == null) {
        iconBaseName = MessageFactory.getInstance().getMessage("app.icon");
    }//  w  w  w .  j  av  a2 s  .c om
    stage.getIcons().add(IconFactory.getInstance().image(caller, iconBaseName, IconFactory.IconSize.SMALL));
    stage.getIcons().add(IconFactory.getInstance().image(caller, iconBaseName, IconFactory.IconSize.MEDIUM));
    stage.getIcons().add(IconFactory.getInstance().image(caller, iconBaseName, IconFactory.IconSize.LARGE));
    stage.getIcons().add(IconFactory.getInstance().image(caller, iconBaseName, IconFactory.IconSize.XLARGE));
    return dialog;
}

From source file:cz.lbenda.rcp.DialogHelper.java

/** Open dialog with chooser when user can choose single option
 * @param question question which is show to user
 * @param items list of items which user can choose
 * @param <T> type of item/*from  w ww.  j  a v  a2 s  .co m*/
 * @return null if user click on cancel or don't choose anything, elsewhere choosed item */
@SuppressWarnings("unchecked")
public static <T> T chooseSingOption(String question, T... items) {
    if (items.length == 0) {
        return null;
    }
    Dialog<T> dialog = new Dialog<>();
    dialog.setResizable(false);
    dialog.setTitle(chooseSingleOption_title);
    dialog.setHeaderText(question);

    ComboBox<T> comboBox = new ComboBox<>();
    comboBox.getItems().addAll(items);
    dialog.getDialogPane().setContent(comboBox);

    ButtonType btCancel = ButtonType.CANCEL;
    ButtonType btOk = ButtonType.OK;
    dialog.getDialogPane().getButtonTypes().addAll(btCancel, btOk);

    Optional<T> result = dialog.showAndWait();
    if (result.isPresent()) {
        if (btCancel == result.get()) {
            return null;
        }
        if (btOk == result.get()) {
            return comboBox.getSelectionModel().getSelectedItem();
        }
    } else {
        return null;
    }
    return result.get();
}

From source file:cz.lbenda.dataman.db.frm.DbConfigFrmController.java

public static DbConfig openDialog(final DbConfig sc) {
    Dialog<DbConfig> dialog = DialogHelper.createDialog();
    dialog.setResizable(false);/*from w  w  w.  j  ava  2 s .  c  o m*/
    final Tuple2<Parent, DbConfigFrmController> tuple = createNewInstance();
    if (sc != null) {
        tuple.get2().loadDataFromSessionConfiguration(sc);
    }
    dialog.setTitle(msgDialogTitle);
    dialog.setHeaderText(msgDialogHeader);

    dialog.getDialogPane().setContent(tuple.get1());
    ButtonType buttonTypeOk = ButtonType.OK;
    ButtonType buttonTypeCancel = ButtonType.CANCEL;
    dialog.getDialogPane().getButtonTypes().add(buttonTypeCancel);
    dialog.getDialogPane().getButtonTypes().add(buttonTypeOk);
    dialog.getDialogPane().setPadding(new Insets(0, 0, 0, 0));

    dialog.setResultConverter(b -> {
        if (b == buttonTypeOk) {
            DbConfig sc1 = sc;
            if (sc1 == null) {
                sc1 = new DbConfig();
                tuple.get2().storeDataToSessionConfiguration(sc1);
                DbConfigFactory.getConfigurations().add(sc1);
            } else {
                tuple.get2().storeDataToSessionConfiguration(sc1);
                if (DbConfigFactory.getConfigurations().contains(sc1)) { // The copied session isn't in list yet
                    int idx = DbConfigFactory.getConfigurations().indexOf(sc1);
                    DbConfigFactory.getConfigurations().remove(sc1);
                    DbConfigFactory.getConfigurations().add(idx, sc1);
                } else {
                    DbConfigFactory.getConfigurations().add(sc1);
                }
            }
            DbConfigFactory.saveConfiguration();
            return sc1;
        }
        return null;
    });

    Optional<DbConfig> result = dialog.showAndWait();
    if (result.isPresent()) {
        return result.get();
    }
    return null;
}

From source file:com.github.tddts.jet.view.fx.spring.DialogProvider.java

private void setDialogContent(Dialog<?> dialog, Node root, FxDialog dialogAnnotation) {
    boolean expandable = dialogAnnotation.expandable();
    if (expandable) {
        dialog.getDialogPane().setExpandableContent(root);
    } else {//  w  w  w  .  ja  v a2 s  .c  o  m
        dialog.getDialogPane().setContent(root);
    }
}

From source file:tachyon.view.ProjectProperties.java

public ProjectProperties(JavaProject project, Window w) {
    this.project = project;
    stage = new Stage();
    stage.initOwner(w);/*from  w w  w. j a v  a  2 s. c o  m*/
    stage.initModality(Modality.APPLICATION_MODAL);
    stage.setWidth(600);
    stage.setTitle("Project Properties - " + project.getProjectName());
    stage.getIcons().add(tachyon.Tachyon.icon);
    stage.setResizable(false);
    HBox mai, libs, one, two, thr, fou;
    ListView<String> compileList, runtimeList;
    Button compileAdd, compileRemove, preview, selectIm, runtimeAdd, runtimeRemove;
    TextField iconField;
    stage.setScene(new Scene(new VBox(5, pane = new TabPane(
            new Tab("Library Settings",
                    box1 = new VBox(15,
                            libs = new HBox(10, new Label("External Libraries"), libsView = new ListView<>(),
                                    new VBox(5, addJar = new Button("Add Jar"),
                                            removeJar = new Button("Remove Jar"))))),
            new Tab("Program Settings",
                    new ScrollPane(box2 = new VBox(15, one = new HBox(10, new Label("Main-Class"),
                            mainClass = new TextField(project.getMainClassName()),
                            select = new Button("Select")),
                            two = new HBox(10, new Label("Compile-Time Arguments"),
                                    compileList = new ListView<>(),
                                    new VBox(5, compileAdd = new Button("Add Argument"),
                                            compileRemove = new Button("Remove Argument")))))),
            new Tab("Deployment Settings",
                    box3 = new VBox(15, thr = new HBox(10, new Label("Icon File"),
                            iconField = new TextField(project.getFileIconPath()),
                            preview = new Button("Preview Image"), selectIm = new Button("Select Icon")),
                            fou = new HBox(10, new Label("Runtime Arguments"), runtimeList = new ListView<>(),
                                    new VBox(5, runtimeAdd = new Button("Add Argument"),
                                            runtimeRemove = new Button("Remove Argument")))))),
            new VBox(15, mai = new HBox(10, cancel = new Button("Cancel"), confirm = new Button("Confirm"))))));
    if (applyCss.get()) {
        stage.getScene().getStylesheets().add(css);
    }
    for (Tab b : pane.getTabs()) {
        b.setClosable(false);
    }
    mainClass.setPromptText("Main-Class");
    box1.setPadding(new Insets(5, 10, 5, 10));
    mai.setAlignment(Pos.CENTER_RIGHT);
    mai.setPadding(box1.getPadding());
    libs.setAlignment(Pos.CENTER);
    one.setAlignment(Pos.CENTER);
    two.setAlignment(Pos.CENTER);
    thr.setAlignment(Pos.CENTER);
    fou.setAlignment(Pos.CENTER);
    box1.setAlignment(Pos.CENTER);
    box2.setPadding(box1.getPadding());
    box2.setAlignment(Pos.CENTER);
    box3.setPadding(box1.getPadding());
    box3.setAlignment(Pos.CENTER);
    mainClass.setEditable(false);
    mainClass.setPrefWidth(200);
    for (JavaLibrary lib : project.getAllLibs()) {
        libsView.getItems().add(lib.getBinaryAbsolutePath());
    }
    for (String sa : project.getCompileTimeArguments().keySet()) {
        compileList.getItems().add(sa + ":" + project.getCompileTimeArguments().get(sa));
    }
    for (String sa : project.getRuntimeArguments()) {
        runtimeList.getItems().add(sa);
    }
    compileAdd.setOnAction((e) -> {
        Dialog<Pair<String, String>> dialog = new Dialog<>();
        dialog.setTitle("Compiler Argument");
        dialog.initOwner(stage);
        dialog.setHeaderText("Entry the argument");

        ButtonType loginButtonType = new ButtonType("Done", ButtonData.OK_DONE);
        dialog.getDialogPane().getButtonTypes().addAll(loginButtonType, ButtonType.CANCEL);

        GridPane grid = new GridPane();
        grid.setHgap(10);
        grid.setVgap(10);
        grid.setPadding(new Insets(20, 150, 10, 10));

        TextField username = new TextField();
        username.setPromptText("Key");
        TextField password = new TextField();
        password.setPromptText("Value");

        grid.add(new Label("Key:"), 0, 0);
        grid.add(username, 1, 0);
        grid.add(new Label("Value:"), 0, 1);
        grid.add(password, 1, 1);

        Node loginButton = dialog.getDialogPane().lookupButton(loginButtonType);
        loginButton.setDisable(true);

        username.textProperty().addListener((observable, oldValue, newValue) -> {
            loginButton.setDisable(newValue.trim().isEmpty());
        });

        dialog.getDialogPane().setContent(grid);

        Platform.runLater(() -> username.requestFocus());

        dialog.setResultConverter(dialogButton -> {
            if (dialogButton == loginButtonType) {
                return new Pair<>(username.getText(), password.getText());
            }
            return null;
        });

        Optional<Pair<String, String>> result = dialog.showAndWait();
        if (result.isPresent()) {
            compileList.getItems().add(result.get().getKey() + ":" + result.get().getValue());
        }
    });
    compileRemove.setOnAction((e) -> {
        if (compileList.getSelectionModel().getSelectedItem() != null) {
            compileList.getItems().remove(compileList.getSelectionModel().getSelectedItem());
        }
    });
    runtimeAdd.setOnAction((e) -> {
        TextInputDialog dia = new TextInputDialog();
        dia.setTitle("Add Runtime Argument");
        dia.setHeaderText("Enter an argument");
        dia.initOwner(stage);
        Optional<String> res = dia.showAndWait();
        if (res.isPresent()) {
            runtimeList.getItems().add(res.get());
        }
    });
    runtimeRemove.setOnAction((e) -> {
        if (runtimeList.getSelectionModel().getSelectedItem() != null) {
            runtimeList.getItems().remove(runtimeList.getSelectionModel().getSelectedItem());
        }
    });
    preview.setOnAction((e) -> {
        if (!iconField.getText().isEmpty()) {
            if (iconField.getText().endsWith(".ico")) {
                List<BufferedImage> read = new ArrayList<>();
                try {
                    read.addAll(ICODecoder.read(new File(iconField.getText())));
                } catch (IOException ex) {
                }
                if (read.size() >= 1) {
                    Image im = SwingFXUtils.toFXImage(read.get(0), null);
                    Stage st = new Stage();
                    st.initOwner(stage);
                    st.initModality(Modality.APPLICATION_MODAL);
                    st.setTitle("Icon Preview");
                    st.getIcons().add(Tachyon.icon);
                    st.setScene(new Scene(new BorderPane(new ImageView(im))));
                    if (applyCss.get()) {
                        st.getScene().getStylesheets().add(css);
                    }
                    st.showAndWait();
                }
            } else if (iconField.getText().endsWith(".icns")) {
                try {
                    BufferedImage ima = Imaging.getBufferedImage(new File(iconField.getText()));
                    if (ima != null) {
                        Image im = SwingFXUtils.toFXImage(ima, null);
                        Stage st = new Stage();
                        st.initOwner(stage);
                        st.initModality(Modality.APPLICATION_MODAL);
                        st.setTitle("Icon Preview");
                        st.getIcons().add(Tachyon.icon);
                        st.setScene(new Scene(new BorderPane(new ImageView(im))));
                        if (applyCss.get()) {
                            st.getScene().getStylesheets().add(css);
                        }
                        st.showAndWait();
                    }
                } catch (ImageReadException | IOException ex) {
                }
            } else {
                Image im = new Image(new File(iconField.getText()).toURI().toString());
                Stage st = new Stage();
                st.initOwner(stage);
                st.initModality(Modality.APPLICATION_MODAL);
                st.setTitle("Icon Preview");
                st.getIcons().add(Tachyon.icon);
                st.setScene(new Scene(new BorderPane(new ImageView(im))));
                if (applyCss.get()) {
                    st.getScene().getStylesheets().add(css);
                }
                st.showAndWait();
            }
        }
    });
    selectIm.setOnAction((e) -> {
        FileChooser fc = new FileChooser();
        fc.setTitle("Icon File");
        String OS = System.getProperty("os.name").toLowerCase();
        fc.getExtensionFilters().add(new ExtensionFilter("Icon File",
                OS.contains("win") ? getWindowsImageExtensions() : getMacImageExtensions()));
        fc.setSelectedExtensionFilter(fc.getExtensionFilters().get(0));
        File lf = fc.showOpenDialog(stage);
        if (lf != null) {
            iconField.setText(lf.getAbsolutePath());
        }
    });

    addJar.setOnAction((e) -> {
        FileChooser f = new FileChooser();
        f.setTitle("External Libraries");
        f.setSelectedExtensionFilter(new ExtensionFilter("Jar Files", "*.jar"));
        List<File> showOpenMultipleDialog = f.showOpenMultipleDialog(stage);
        if (showOpenMultipleDialog != null) {
            for (File fi : showOpenMultipleDialog) {
                if (!libsView.getItems().contains(fi.getAbsolutePath())) {
                    libsView.getItems().add(fi.getAbsolutePath());
                }
            }
        }
    });

    removeJar.setOnAction((e) -> {
        String selected = libsView.getSelectionModel().getSelectedItem();
        if (selected != null) {
            libsView.getItems().remove(selected);
        }
    });

    select.setOnAction((e) -> {
        List<String> all = getAll();
        ChoiceDialog<String> di = new ChoiceDialog<>(project.getMainClassName(), all);
        di.setTitle("Select Main Class");
        di.initOwner(stage);
        di.setHeaderText("Select A Main Class");
        Optional<String> show = di.showAndWait();
        if (show.isPresent()) {
            mainClass.setText(show.get());
        }
    });
    cancel.setOnAction((e) -> {
        stage.close();
    });
    confirm.setOnAction((e) -> {
        project.setMainClassName(mainClass.getText());
        project.setFileIconPath(iconField.getText());
        project.setRuntimeArguments(runtimeList.getItems());
        HashMap<String, String> al = new HashMap<>();
        for (String s : compileList.getItems()) {
            String[] spl = s.split(":");
            al.put(spl[0], spl[1]);
        }
        project.setCompileTimeArguments(al);
        project.setAllLibs(libsView.getItems());
        stage.close();
    });
}

From source file:ruleprunermt2.FXMLDocumentController.java

@FXML
private void RSESprepare() throws IOException {
    try {//from ww  w. j a v a2 s. c  o m
        RSESpreparator.prepareRules();
        ButtonType buttonOK = new ButtonType("OK", ButtonData.OK_DONE);
        Dialog<String> dialog = new Dialog<>();
        dialog.getDialogPane().getButtonTypes().add(buttonOK);
        dialog.setContentText("Operation successful!");
        dialog.showAndWait();
    } catch (Exception e) {
        ButtonType buttonOK = new ButtonType("OK", ButtonData.OK_DONE);
        Dialog<String> dialog = new Dialog<>();
        dialog.getDialogPane().getButtonTypes().add(buttonOK);
        dialog.setContentText("Operation failed!");
        dialog.showAndWait();
    }
}

From source file:ruleprunermt2.FXMLDocumentController.java

@FXML
private void RSESconvertRules() throws IOException {
    try {/*from  w  w w .j  a va2s .  c o m*/
        RSESruleProcessor.processRules();
        ButtonType buttonOK = new ButtonType("OK", ButtonData.OK_DONE);
        Dialog<String> dialog = new Dialog<>();
        dialog.getDialogPane().getButtonTypes().add(buttonOK);
        dialog.setContentText("Operation successful!");
        dialog.showAndWait();
    } catch (Exception e) {
        ButtonType buttonOK = new ButtonType("OK", ButtonData.OK_DONE);
        Dialog<String> dialog = new Dialog<>();
        dialog.getDialogPane().getButtonTypes().add(buttonOK);
        dialog.setContentText("Operation failed!");
        dialog.showAndWait();
    }
}