List of usage examples for javafx.scene.control Dialog setHeaderText
public final void setHeaderText(String headerText)
From source file:jlotoprint.MainViewController.java
public static void loadAboutWindow() { //setup/* www . ja va2s. c o m*/ 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: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 ww w . ja va 2s. c o 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 . ja va 2s .c om*/ 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:cz.lbenda.rcp.DialogHelper.java
/** Show unsaved object if aren't saved. if user want cancel the closing then return false, elserwhere return true * @param savableRegistry register which hold unsaved data * @return true if window/object can be closed */ public boolean showUnsavedObjectDialog(SavableRegistry savableRegistry) { Set<Savable> savables = savableRegistry.dirtySavables(); if (savables.size() == 0) { return true; }//from ww w.ja va2s . co m Dialog<?> dialog = new Dialog<>(); dialog.setResizable(false); dialog.setTitle(msgNotSavedObjectsTitle); dialog.setHeaderText(msgNotSavedObjectsHeader); BorderPane pane = new BorderPane(); pane.setPrefHeight(400); pane.setPrefWidth(300); ListView<DialogHelper.Item> listView = new ListView<>(); listView.getItems() .addAll(savables.stream().map(savable -> new Item(savable, true)).collect(Collectors.toList())); listView.setCellFactory(CheckBoxListCell.forListView(DialogHelper.Item::onProperty)); pane.setCenter(listView); dialog.getDialogPane().setContent(pane); ButtonType btCancel = new ButtonType(button_cancel, ButtonBar.ButtonData.CANCEL_CLOSE); ButtonType btSaveClose = new ButtonType(button_saveAndClose, ButtonBar.ButtonData.OK_DONE); ButtonType btClose = new ButtonType(button_closeWithoutSave); dialog.getDialogPane().getButtonTypes().addAll(btClose, btSaveClose, btCancel); Optional<?> result = dialog.showAndWait(); if (result.isPresent()) { if (btCancel == result.get()) { return false; } if (btSaveClose == result.get()) { listView.getItems().stream().filter(Item::isOn).forEach(item -> item.getSavable().save()); } } else { return false; } return true; }
From source file:com.bekwam.resignator.ResignatorAppMainViewController.java
@FXML public void saveAsProfile() { Dialog<String> dialog = new TextInputDialog(); dialog.setTitle("Profile name"); dialog.setHeaderText("Enter profile name"); Optional<String> result = dialog.showAndWait(); if (result.isPresent()) { //// www.jav a 2 s . c o m // Check for uniqueness; prompt for overwrite // final String profileName = result.get(); if (profileNameInUse(profileName)) { if (logger.isDebugEnabled()) { logger.debug("[SAVE AS] profile name in use; prompt for overwrite"); } Alert alert = new Alert(Alert.AlertType.CONFIRMATION, "Overwrite existing profile '" + profileName + "'?"); alert.setHeaderText("Profile name in use"); Optional<ButtonType> response = alert.showAndWait(); if (!response.isPresent() || response.get() != ButtonType.OK) { if (logger.isDebugEnabled()) { logger.debug("[SAVE AS] overwrite canceled"); } return; } } if (configurationDS.profileExists(profileName)) { Alert alert = new Alert(Alert.AlertType.CONFIRMATION, "Overwrite existing profile?"); alert.setHeaderText("Profile exists"); Optional<ButtonType> response = alert.showAndWait(); if (!response.isPresent() || response.get() != ButtonType.OK) { return; } } activeConfiguration.activeProfileProperty().set(profileName); // activeProfile object tweaked w. new name try { recordRecentProfile(activeProfile.getProfileName()); // #18 configurationDS.saveProfile(); Stage s = (Stage) sp.getScene().getWindow(); s.setTitle("ResignatorApp - " + profileName); needsSave.set(false); addToProfileBrowser(profileName); } catch (IOException exc) { logger.error("error saving profile '" + profileName + "'", exc); Alert alert = new Alert(Alert.AlertType.ERROR, exc.getMessage()); alert.setHeaderText("Can't save profile"); alert.showAndWait(); } } else { String msg = "A profile name is required"; Alert alert = new Alert(Alert.AlertType.ERROR, msg); alert.setHeaderText("Can't save profile"); alert.showAndWait(); } }
From source file:com.bekwam.resignator.ResignatorAppMainViewController.java
@FXML public void saveProfile() { if (logger.isDebugEnabled()) { logger.debug("[SAVE PROFILE]"); }/*w ww.jav a2 s. com*/ if (activeConfiguration.activeProfileProperty().isEmpty().get()) { if (logger.isDebugEnabled()) { logger.debug("[SAVE PROFILE] activeProfileName is empty"); } Dialog<String> dialog = new TextInputDialog(); dialog.setTitle("Profile name"); dialog.setHeaderText("Enter profile name"); Optional<String> result = dialog.showAndWait(); if (result.isPresent()) { String newProfileName = result.get(); if (configurationDS.profileExists(newProfileName)) { Alert alert = new Alert(Alert.AlertType.CONFIRMATION, "Overwrite existing profile?"); alert.setHeaderText("Profile exists"); Optional<ButtonType> response = alert.showAndWait(); if (!response.isPresent() || response.get() != ButtonType.OK) { return; } } activeConfiguration.activeProfileProperty().set(newProfileName); try { recordRecentProfile(newProfileName); // #18 configurationDS.saveProfile(); // saves active profile Stage s = (Stage) sp.getScene().getWindow(); s.setTitle("ResignatorApp - " + newProfileName); needsSave.set(false); addToProfileBrowser(newProfileName); } catch (IOException exc) { logger.error("error saving profile '" + newProfileName + "'", exc); Alert alert = new Alert(Alert.AlertType.ERROR, exc.getMessage()); alert.setHeaderText("Can't save profile"); alert.showAndWait(); } } else { String msg = "A profile name is required"; Alert alert = new Alert(Alert.AlertType.ERROR, msg); alert.setHeaderText("Can't save profile"); alert.showAndWait(); } } else { // just save if (logger.isDebugEnabled()) { logger.debug("[SAVE PROFILE] there is an active profile"); } try { recordRecentProfile(activeProfile.getProfileName()); // #18 configurationDS.saveProfile(); // saves active profile needsSave.set(false); } catch (IOException exc) { logger.error("error saving profile '" + activeConfiguration.activeProfileProperty().get() + "'", exc); Alert alert = new Alert(Alert.AlertType.ERROR, exc.getMessage()); alert.setHeaderText("Can't save profile"); alert.showAndWait(); } } }
From source file:com.bekwam.resignator.ResignatorAppMainViewController.java
@FXML public void loadProfile() { if (logger.isDebugEnabled()) { logger.debug("[LOAD PROFILE]"); }//from w w w. ja v a 2 s.com // // Clear output from last operation // Preconditions.checkArgument(!lblStatus.textProperty().isBound()); lblStatus.setText(""); txtConsole.setText(""); piSignProgress.setProgress(0.0d); piSignProgress.setVisible(false); clearValidationErrors(); // // Get profiles from loaded Configuration object // List<Profile> profiles = configurationDS.getProfiles(); if (CollectionUtils.isEmpty(profiles)) { if (logger.isDebugEnabled()) { logger.debug("[LOAD PROFILE] no profiles"); } String msg = "Select File > Save Profile to save the active profile."; Alert alert = new Alert(Alert.AlertType.INFORMATION, msg); alert.setHeaderText("No profiles saved"); alert.showAndWait(); return; } // // Distill list of profile names from List of Profile objects // List<String> profileNames = profiles.stream().sorted(comparing(Profile::getProfileName)) .map(Profile::getProfileName).collect(toList()); // // Select default item which is active item if available otherwise first item // String defaultProfileName = profileNames.get(0); // // Prompt user for selection - default is first item // if (StringUtils.isNotEmpty(activeConfiguration.activeProfileProperty().getValue())) { defaultProfileName = activeConfiguration.activeProfileProperty().getValue(); } if (logger.isDebugEnabled()) { logger.debug("[LOAD PROFILE] default profileName={}", defaultProfileName); } Dialog<String> dialog = new ChoiceDialog<>(defaultProfileName, profileNames); dialog.setTitle("Profile"); dialog.setHeaderText("Select profile "); Optional<String> result = dialog.showAndWait(); if (!result.isPresent()) { return; // cancel } if (logger.isDebugEnabled()) { logger.debug("[LOAD PROFILE] selected={}", result.get()); } doLoadProfile(result.get()); }
From source file:spdxedit.license.FileLicenseEditor.java
public static void extractLicenseFromFile(SpdxFile file, SpdxDocumentContainer container) { Dialog dialog = new Dialog(); dialog.setTitle(Main.APP_TITLE);/* w ww .j a v a 2 s. co 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:tachyon.view.ProjectProperties.java
public ProjectProperties(JavaProject project, Window w) { this.project = project; stage = new Stage(); stage.initOwner(w);//from w ww. jav a2s . co 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(); }); }