Example usage for javafx.stage Modality APPLICATION_MODAL

List of usage examples for javafx.stage Modality APPLICATION_MODAL

Introduction

In this page you can find the example usage for javafx.stage Modality APPLICATION_MODAL.

Prototype

Modality APPLICATION_MODAL

To view the source code for javafx.stage Modality APPLICATION_MODAL.

Click Source Link

Document

Defines a modal window that blocks events from being delivered to any other application window.

Usage

From source file:org.ado.biblio.desktop.AppPresenter.java

public void about() {
    LOGGER.info("about");
    Stage stage = new Stage();
    final AboutView aboutView = new AboutView();
    final AboutPresenter presenter = (AboutPresenter) aboutView.getPresenter();
    presenter.setStage(stage);//  ww w. j  ava2 s  . c  o m
    stage.initModality(Modality.APPLICATION_MODAL);
    stage.setScene(new Scene(aboutView.getView()));
    stage.setTitle("About");
    stage.show();
}

From source file:com.properned.application.SystemController.java

@FXML
public void openLocaleDialog() {
    logger.info("Open the locale dialog");

    FXMLLoader loader = new FXMLLoader();
    loader.setLocation(getClass().getResource("/com/properned/gui/localeFrame.fxml"));
    loader.setResources(MessageReader.getInstance().getBundle());

    try {//from  w ww .j a v  a 2  s  .co  m
        loader.load();

        Parent root = loader.getRoot();

        Stage modalDialog = new Stage(StageStyle.UNIFIED);
        modalDialog.initModality(Modality.APPLICATION_MODAL);
        modalDialog.initOwner(Properned.getInstance().getPrimaryStage());
        modalDialog.setTitle(MessageReader.getInstance().getMessage("manageLocale.title"));
        modalDialog.setResizable(true);
        modalDialog.getIcons().add(new Image("/com/properned/style/icon/icon_16.png"));

        Scene scene = new Scene(root);
        scene.getStylesheets().add("/com/properned/style/application.css");

        modalDialog.setScene(scene);

        modalDialog.showAndWait();
    } catch (IOException e) {
        Properned.getInstance().showError(MessageReader.getInstance().getMessage("error.openFrame"), e);
    }
}

From source file:io.github.mzmine.modules.plots.chromatogram.ChromatogramPlotWindowController.java

public void handleSetupLayers(Event e) {
    try {//from   w  w w .j a v a  2s. com
        URL layersDialogFXML = getClass().getResource(LAYERS_DIALOG_FXML);
        FXMLLoader loader = new FXMLLoader(layersDialogFXML);
        Stage layersDialog = loader.load();
        ChromatogramLayersDialogController controller = loader.getController();
        controller.configure(datasets, this);
        layersDialog.initModality(Modality.APPLICATION_MODAL);
        layersDialog.show();
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

From source file:com.helegris.szorengeteg.ui.forms.TopicFormView.java

/**
 * Handles click events on the table. When clicking on the "image" or
 * "audio" column of a word, it opens a new stage for editing them.
 *
 * @param event// ww  w. java 2 s. c o  m
 */
private void tableClick(MouseEvent event) {
    if (!rows.isEmpty() && !tableView.getSelectionModel().getSelectedCells().isEmpty()) {
        TablePosition position = tableView.getSelectionModel().getSelectedCells().get(0);
        if (colImage.equals(position.getTableColumn())) {
            int index = position.getRow();
            RowForCard row = (RowForCard) sortedRows.get(index);
            Image currentImage = row.getImageView().getImage();
            ImagePopup imagePopup = new ImagePopup(currentImage);
            Stage stage = new Stage();
            stage.setScene(new SceneStyler().createScene(imagePopup, SceneStyler.Style.TOPIC_LIST));
            stage.setTitle(Messages.msg("form.set_image_of_word", row.getTxtWord().getText()));
            stage.initModality(Modality.APPLICATION_MODAL);
            stage.initOwner(tableView.getScene().getWindow());
            stage.setResizable(false);
            tableView.getSelectionModel().clearSelection();

            stage.showAndWait();
            if (imagePopup.isOk()) {
                Image rowImage = imagePopup.getFinalImage();
                File cardImageFile = imagePopup.getFile();
                if (rowImage != null && cardImageFile != null) {
                    row.setImageFile(cardImageFile);
                    row.setImage(rowImage);
                } else if (rowImage == null) {
                    row.setImage(DefaultImage.getInstance());
                }
            }
        } else if (colAudio.equals(position.getTableColumn())) {
            int index = position.getRow();
            RowForCard row = (RowForCard) sortedRows.get(index);
            AudioPopup audioPopup = new AudioPopup(row.getAudioIcon().getAudio());
            Stage stage = new Stage();
            stage.setScene(new SceneStyler().createScene(audioPopup, SceneStyler.Style.TOPIC_LIST));
            stage.setTitle(Messages.msg("form.set_audio_of_word", row.getTxtWord().getText()));
            stage.initModality(Modality.APPLICATION_MODAL);
            stage.initOwner(tableView.getScene().getWindow());
            stage.setResizable(false);
            tableView.getSelectionModel().clearSelection();

            stage.showAndWait();
            if (audioPopup.isOk()) {
                File audioFile = audioPopup.getFile();
                row.setAudioFile(audioFile);
                row.setAudio(audioPopup.getFinalAudio());
            }
        }
    }
}

From source file:spdxedit.PackageEditor.java

/**
 * Opens the modal package editor for the provided package.
 *
 * @param pkg               The package to edit.
 * @param relatablePackages Packages to which the edited package may optionally have defined relationships
 * @param parentWindow      The parent window.
 *///from   ww w . j a v  a2s.c  o  m
public static void editPackage(final SpdxPackage pkg, final List<SpdxPackage> relatablePackages,
        SpdxDocumentContainer documentContainer, Window parentWindow) {

    final PackageEditor packageEditor = new PackageEditor(pkg, relatablePackages, documentContainer);
    final Stage dialogStage = new Stage();
    dialogStage.setTitle("Edit SPDX Package: " + pkg.getName());
    dialogStage.initStyle(StageStyle.DECORATED);
    dialogStage.initModality(Modality.APPLICATION_MODAL);
    dialogStage.setY(parentWindow.getX() + parentWindow.getWidth() / 2);
    dialogStage.setY(parentWindow.getY() + parentWindow.getHeight() / 2);
    dialogStage.setResizable(false);
    try {
        FXMLLoader loader = new FXMLLoader(NewPackageDialog.class.getResource("/PackageEditor.fxml"));
        loader.setController(packageEditor);
        Pane pane = loader.load();
        Scene scene = new Scene(pane);
        dialogStage.setScene(scene);
        dialogStage.getIcons().clear();
        dialogStage.getIcons().add(UiUtils.ICON_IMAGE_VIEW.getImage());
        //Populate the file list on appearance
        dialogStage.setOnShown(event -> {
            try {
                final SpdxFile dummyfile = new SpdxFile(pkg.getName(), null, null, null, null, null, null, null,
                        null, null, null, null, null);
                TreeItem<SpdxFile> root = new TreeItem<>(dummyfile);
                packageEditor.filesTable.setRoot(root);
                //Assume a package without is external
                //TODO: replace with external packages or whatever alternate mechanism in 2.1
                packageEditor.btnAddFile.setDisable(pkg.getFiles().length == 0);
                root.getChildren()
                        .setAll(Stream.of(pkg.getFiles())
                                .sorted(Comparator.comparing(file -> StringUtils.lowerCase(file.getName()))) //Sort by file name
                                .map(TreeItem<SpdxFile>::new).collect(Collectors.toList()));
            } catch (InvalidSPDXAnalysisException e) {
                logger.error("Unable to get files for package " + pkg.getName(), e);
            }

            packageEditor.tabFiles.setExpanded(true);

        });

        //Won't assign this event through FXML - don't want to propagate the stage beyond this point.
        packageEditor.btnOk.setOnMouseClicked(event -> dialogStage.close());
        dialogStage.showAndWait();

    } catch (IOException ioe) {
        throw new RuntimeException("Unable to load dialog", ioe);
    }
}

From source file:com.danilafe.sbaccountmanager.StarboundServerAccountManager.java

private void createBannedUser(ListView<String> to_update) {
    Stage createBannedUser = new Stage();
    createBannedUser.setTitle("Add Banned User");
    createBannedUser.initModality(Modality.APPLICATION_MODAL);

    GridPane gp = new GridPane();
    gp.setPadding(new Insets(25, 25, 25, 25));
    gp.setAlignment(Pos.CENTER);/*from  w  w w. ja  v  a  2 s .c  o  m*/
    gp.setVgap(10);
    gp.setHgap(10);

    Text title = new Text("Add Banned Username");
    title.setFont(Font.font("Century Gothic", FontWeight.NORMAL, 20));
    gp.add(title, 0, 0, 2, 1);

    Label newusername = new Label("Ban Username");
    TextField username = new TextField();
    gp.add(newusername, 0, 1);
    gp.add(username, 1, 1);

    Button finish = new Button("Finish");
    HBox finish_box = new HBox(10);
    finish_box.setAlignment(Pos.CENTER);
    finish_box.getChildren().add(finish);

    finish.setOnAction(new EventHandler<ActionEvent>() {

        @Override
        public void handle(ActionEvent event) {
            banned_usernames.remove(username.getText());
            banned_usernames.add(username.getText());
            to_update.setItems(FXCollections.observableArrayList(banned_usernames));
            createBannedUser.close();
        }

    });

    gp.add(finish_box, 0, 2, 2, 1);

    Scene sc = new Scene(gp, 300, 175);
    createBannedUser.setScene(sc);
    createBannedUser.show();
}

From source file:org.beryx.viewreka.fxapp.ProjectLibs.java

public void installLibs(String prjName, File prjDir) {
    InstallLibsTask task = new InstallLibsTask(prjName, prjDir, lstLib);

    Stage progressStage = new Stage();
    progressStage.setOnCloseRequest(ev -> {
        if (Dialogs.confirmYesNo("Cancel",
                "Are you sure you want to cancel the installation of project libraries?", null)) {
            task.cancel();//from  www . j  a v  a  2s.com
        }
    });
    progressStage.initStyle(StageStyle.UTILITY);
    progressStage.initModality(Modality.APPLICATION_MODAL);
    progressStage.setTitle("Create project " + prjName);

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

    ProgressIndicator progressIndicator = new ProgressIndicator();
    progressIndicator.setPrefSize(64, 64);
    progressIndicator.setMinSize(64, 64);
    progressIndicator.setMaxSize(64, 64);
    //        progressIndicator.progressProperty().bind(task.progressProperty());
    grid.add(progressIndicator, 0, 0);

    Label actionLabel = new Label("Install project libraries...");
    actionLabel.textProperty().bind(task.messageProperty());
    grid.add(actionLabel, 1, 0);

    progressStage.setScene(new Scene(grid, 600, 120));

    task.setOnSucceeded(ev -> closeProgress(progressStage, task));
    task.setOnFailed(ev -> closeProgress(progressStage, task));
    task.setOnCancelled(ev -> closeProgress(progressStage, task));

    progressStage.setOnShown(ev -> Executors.newSingleThreadExecutor().submit(task));
    progressStage.showAndWait();
}

From source file:org.ado.biblio.desktop.AppPresenter.java

public void returnBook() {
    LOGGER.info("returnBook");

    Stage stage = new Stage();
    final ReturnBookView returnBookView = new ReturnBookView();
    final ReturnBookPresenter presenter = (ReturnBookPresenter) returnBookView.getPresenter();
    presenter.init(stage, this, bookId);
    stage.initModality(Modality.APPLICATION_MODAL);
    stage.setScene(new Scene(returnBookView.getView()));
    stage.setTitle("Return Book");
    stage.show();/*  w ww .j  av a 2  s  . c om*/
}

From source file:com.esri.geoevent.test.performance.ui.OrchestratorController.java

/**
 * Shows the report options dialog/*from  w  w w .j a v a2  s. c o m*/
 */
private void showReportOptionsDialog() {
    try {
        // Load the fxml file and create a new stage for the popup
        FXMLLoader loader = new FXMLLoader(getClass().getResource("ReportOptions.fxml"));
        AnchorPane page = (AnchorPane) loader.load();
        Stage dialogStage = new Stage();
        dialogStage.setTitle(UIMessages.getMessage("UI_REPORT_OPTIONS_TITLE"));
        dialogStage.initModality(Modality.APPLICATION_MODAL);
        dialogStage.initOwner(stage);
        Scene scene = new Scene(page);
        dialogStage.setScene(scene);

        // Set the person into the controller
        ReportOptionsController controller = loader.getController();
        controller.setDialogStage(dialogStage);
        controller.setReport(this.fixtures.getReport()); //TODO: we need to clone our Report Object Here

        // Show the dialog and wait until the user closes it
        dialogStage.showAndWait();
        if (controller.isOkClicked()) {
            this.fixtures.setReport(controller.getReport());
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
}

From source file:com.danilafe.sbaccountmanager.StarboundServerAccountManager.java

private void createBannedIP(ListView<String> to_update) {
    Stage createBannedIP = new Stage();
    createBannedIP.setTitle("Add Banned IP");
    createBannedIP.initModality(Modality.APPLICATION_MODAL);

    GridPane gp = new GridPane();
    gp.setPadding(new Insets(25, 25, 25, 25));
    gp.setAlignment(Pos.CENTER);/*from  w  w w .  j ava  2s .c o  m*/
    gp.setVgap(10);
    gp.setHgap(10);

    Text title = new Text("Add Banned IP");
    title.setFont(Font.font("Century Gothic", FontWeight.NORMAL, 20));
    gp.add(title, 0, 0, 2, 1);

    Label newusername = new Label("Ban IP");
    TextField username = new TextField();
    gp.add(newusername, 0, 1);
    gp.add(username, 1, 1);

    Button finish = new Button("Finish");
    HBox finish_box = new HBox(10);
    finish_box.setAlignment(Pos.CENTER);
    finish_box.getChildren().add(finish);

    finish.setOnAction(new EventHandler<ActionEvent>() {

        @Override
        public void handle(ActionEvent event) {
            banned_ips.remove(username.getText());
            banned_ips.add(username.getText());
            to_update.setItems(FXCollections.observableArrayList(banned_ips));
            createBannedIP.close();
        }

    });

    gp.add(finish_box, 0, 2, 2, 1);

    Scene sc = new Scene(gp, 300, 175);
    createBannedIP.setScene(sc);
    createBannedIP.show();
}