List of usage examples for javafx.stage Stage setOnCloseRequest
public final void setOnCloseRequest(EventHandler<WindowEvent> value)
From source file:org.nmrfx.processor.gui.MainApp.java
public static void registerStage(Stage stage, FXMLController controller) { if (!stages.contains(stage)) { stages.add(stage);/*from w ww.j a va 2 s. c o m*/ } stage.setOnCloseRequest(e -> { controller.close(); removeStage(stage); }); }
From source file:jlotoprint.MainViewController.java
@FXML public void handleOpenTemplateDesigner(ActionEvent event) { try {// ww w .j ava2 s .com FXMLLoader dialog = new FXMLLoader(MainViewController.class.getResource("TemplateDesigner.fxml")); Parent root = (Parent) dialog.load(); final Stage stage = new Stage(); stage.setOnCloseRequest((WindowEvent windowEvent) -> { boolean shouldClose = ((TemplateDesignerController) dialog.getController()).showSaveChangesDialog(); //cancel event if (!shouldClose) { windowEvent.consume(); } }); root.addEventHandler(TemplateDesignerEvent.CLOSE, actionEvent -> { stage.close(); }); stage.setScene(new Scene(root)); stage.getIcons().add(new Image("file:resources/icon.png")); stage.setTitle("Template Designer"); stage.initModality(Modality.APPLICATION_MODAL); stage.initOwner(JLotoPrint.stage.getScene().getWindow()); stage.show(); } catch (IOException ex) { Logger.getLogger(MainViewController.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:Main.java
@Override public void start(Stage stage) { Text text = new Text("!"); text.setFont(new Font(40)); VBox box = new VBox(); box.getChildren().add(text);/*from w w w. jav a 2 s . c o m*/ final Scene scene = new Scene(box, 300, 250); scene.setFill(null); stage.setScene(scene); stage.show(); stage.setOnCloseRequest(new EventHandler<WindowEvent>() { public void handle(WindowEvent we) { System.out.println("Stage is closing"); } }); stage.close(); }
From source file:gmailclientfx.controllers.LoginController.java
public void btnLogin_click(ActionEvent e) { if (!txtEmail.getText().equals("")) { String email = txtEmail.getText(); if (EmailValidator.getInstance().isValid(email)) { User user = User.getUserByEmail(email); if (!(user == null)) { try { GmailClient.setRefreshToken(user.getRefreshToken()); GmailClient.refreshAccessToken(); Parent loginStage = txtEmail.getParent(); loginStage.getScene().getWindow().hide(); Parent root;/*from ww w.ja v a 2s. co m*/ root = FXMLLoader .load(getClass().getClassLoader().getResource("gmailclientfx/views/Home.fxml")); Stage stage = new Stage(); stage.setTitle("Home"); stage.setOnCloseRequest(new EventHandler<WindowEvent>() { @Override public void handle(WindowEvent e) { Platform.exit(); System.exit(0); } }); stage.setScene(new Scene(root)); stage.show(); } catch (IOException ex) { Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex); } } else { try { GmailClient.authorizeUser(); String noviEmail = GmailClient.getEmail(); String noviRefreshToken = GmailClient.getRefreshToken(); User u = User.getUserByEmail(noviEmail); if (u == null) { User.unesiUseraUBazu(new User(noviEmail, noviRefreshToken)); } Parent loginStage = txtEmail.getParent(); loginStage.getScene().getWindow().hide(); Parent root; root = FXMLLoader .load(getClass().getClassLoader().getResource("gmailclientfx/views/Home.fxml")); Stage stage = new Stage(); stage.setTitle("Home"); stage.setScene(new Scene(root)); stage.setOnCloseRequest(new EventHandler<WindowEvent>() { @Override public void handle(WindowEvent e) { Platform.exit(); System.exit(0); } }); stage.show(); } catch (IOException ex) { Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex); } } } else { lblStatusMsg.setText("Uneseni email nije validan!"); } } else { lblStatusMsg.setText("Unesite email!"); } }
From source file:gmailclientfx.controllers.SpamController.java
public void fetchSpam() { ObservableList<MyMessage> data = FXCollections.observableArrayList(); stupacId.setCellValueFactory(new PropertyValueFactory<MyMessage, Integer>("TblId")); stupacNaslov.setCellValueFactory(new PropertyValueFactory<MyMessage, String>("Subject")); stupacFrom.setCellValueFactory(new PropertyValueFactory<MyMessage, String>("Sender")); stupacDatum.setCellValueFactory(new PropertyValueFactory<MyMessage, String>("DateReceived")); spamTable.setItems(data);// w w w. j a v a 2s .c o m spamTable.setOnMousePressed(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { if (event.isPrimaryButtonDown() && event.getClickCount() == 2) { MyMessage selectedMsg = spamTable.getSelectionModel().getSelectedItem(); PregledEmailaHelper.setMsg(selectedMsg); try { Parent root; FXMLLoader loader = new FXMLLoader(); loader.setLocation( getClass().getClassLoader().getResource("gmailclientfx/views/pregledEmaila.fxml")); root = loader.load(); Stage stage = new Stage(); stage.setScene(new Scene(root)); PregledEmailaController pgec = loader.getController(); stage.setOnCloseRequest(new EventHandler<WindowEvent>() { @Override public void handle(WindowEvent event) { pgec.bodyWebViewEngine.load(null); System.out.println("Closing form!"); } }); stage.setTitle(PregledEmailaHelper.getMsg().getSubject() + " - " + PregledEmailaHelper.getMsg().getSender()); stage.show(); } catch (IOException ex) { Logger.getLogger(InboxController.class.getName()).log(Level.SEVERE, null, ex); } } } }); try { IMAPStore store = OAuth2Authenticator.connectToImap("imap.gmail.com", 993, GmailClient.getEmail(), GmailClient.getAccesToken(), true); Folder spam = null; Folder[] folders = store.getDefaultFolder().list("*"); for (Folder f : folders) { IMAPFolder imapFolder = (IMAPFolder) f; for (String att : imapFolder.getAttributes()) { if ("\\Junk".equals(att)) { spam = f; } } } spam.open(Folder.READ_WRITE); MimeMessage[] seenMessages = (MimeMessage[]) spam .search(new FlagTerm(new Flags(Flags.Flag.SEEN), true)); for (int i = 0; i < seenMessages.length; i++) { MyMessage msg = GmailClient.fetchMessage(seenMessages[i], i + 1, "SPAM"); data.add(msg); } MimeMessage[] unseenMessages = (MimeMessage[]) spam .search(new FlagTerm(new Flags(Flags.Flag.SEEN), false)); for (int i = 0; i < unseenMessages.length; i++) { MyMessage msg = GmailClient.fetchMessage(unseenMessages[i], i + 1, "SPAM"); data.add(msg); } spam.close(false); store.close(); } catch (Exception ex) { Logger.getLogger(SpamController.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:gmailclientfx.controllers.ObrisaneController.java
public void fetchObrisane() { ObservableList<MyMessage> data = FXCollections.observableArrayList(); stupacId.setCellValueFactory(new PropertyValueFactory<MyMessage, Integer>("TblId")); stupacNaslov.setCellValueFactory(new PropertyValueFactory<MyMessage, String>("Subject")); stupacFrom.setCellValueFactory(new PropertyValueFactory<MyMessage, String>("Sender")); stupacDatum.setCellValueFactory(new PropertyValueFactory<MyMessage, String>("DateReceived")); obrisaneTable.setItems(data);//from w w w . j ava 2 s .c o m obrisaneTable.setOnMousePressed(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { if (event.isPrimaryButtonDown() && event.getClickCount() == 2) { MyMessage selectedMsg = obrisaneTable.getSelectionModel().getSelectedItem(); PregledEmailaHelper.setMsg(selectedMsg); try { Parent root; FXMLLoader loader = new FXMLLoader(); loader.setLocation( getClass().getClassLoader().getResource("gmailclientfx/views/pregledEmaila.fxml")); root = loader.load(); Stage stage = new Stage(); stage.setScene(new Scene(root)); stage.show(); PregledEmailaController pgec = loader.getController(); stage.setOnCloseRequest(new EventHandler<WindowEvent>() { @Override public void handle(WindowEvent event) { pgec.bodyWebViewEngine.load(null); System.out.println("Closing form!"); } }); stage.setTitle(PregledEmailaHelper.getMsg().getSubject() + " - " + PregledEmailaHelper.getMsg().getSender()); } catch (IOException ex) { Logger.getLogger(InboxController.class.getName()).log(Level.SEVERE, null, ex); } } } }); try { IMAPStore store = OAuth2Authenticator.connectToImap("imap.gmail.com", 993, GmailClient.getEmail(), GmailClient.getAccesToken(), true); Folder obrisane = null; Folder[] folders = store.getDefaultFolder().list("*"); for (Folder f : folders) { IMAPFolder imapFolder = (IMAPFolder) f; for (String att : imapFolder.getAttributes()) { if ("\\Trash".equals(att)) { obrisane = f; } } } obrisane.open(Folder.READ_WRITE); MimeMessage[] seenMessages = (MimeMessage[]) obrisane .search(new FlagTerm(new Flags(Flags.Flag.SEEN), true)); for (int i = 0; i < seenMessages.length; i++) { MyMessage msg = GmailClient.fetchMessage(seenMessages[i], i + 1, "DELETED"); data.add(msg); } MimeMessage[] unseenMessages = (MimeMessage[]) obrisane .search(new FlagTerm(new Flags(Flags.Flag.SEEN), false)); for (int i = 0; i < unseenMessages.length; i++) { MyMessage msg = GmailClient.fetchMessage(unseenMessages[i], i + 1, "DELETED"); data.add(msg); } obrisane.close(false); store.close(); } catch (Exception ex) { Logger.getLogger(ObrisaneController.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:ninja.javafx.smartcsv.fx.SmartCSV.java
private void showUI(Stage primaryStage, String name, String version) { SmartCSVController smartCVSController = appContext.getBean(SmartCSVController.class); Scene scene = new Scene((Parent) smartCVSController.getView()); primaryStage.setScene(scene);// w ww . j a va2 s.c o m primaryStage.setTitle(String.format("%s %s", name, version)); primaryStage.show(); primaryStage.setMaximized(true); primaryStage.setOnCloseRequest(event -> { if (!smartCVSController.canExit()) { event.consume(); } else { exit(); } }); }
From source file:net.sourceforge.pmd.util.fxdesigner.XPathPanelController.java
public void showExportXPathToRuleWizard() throws IOException { ExportXPathWizardController wizard = new ExportXPathWizardController(xpathExpressionProperty()); FXMLLoader loader = new FXMLLoader(getClass().getResource("fxml/xpath-export-wizard.fxml")); loader.setController(wizard);/*from www.j a v a 2 s .c o m*/ final Stage dialog = new Stage(); dialog.initOwner(designerRoot.getMainStage()); dialog.setOnCloseRequest(e -> wizard.shutdown()); dialog.initModality(Modality.WINDOW_MODAL); Parent root = loader.load(); Scene scene = new Scene(root); //stage.setTitle("PMD Rule Designer (v " + PMD.VERSION + ')'); dialog.setScene(scene); dialog.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 ww w .ja v a2 s. c om*/ } }); 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.craftercms.social.migration.MigrationTool.java
@Override public void start(final Stage primaryStage) throws Exception { loadProperties();//from w w w .ja v a 2 s . c om log.debug("Loading Fxml file"); FXMLLoader loader = new FXMLLoader(getClass().getResource("/scenes/Main.fxml")); log.debug("Fxml file Loaded, Starting scene"); Scene scene = new Scene((VBox) loader.load()); final MainController controller = loader.getController(); controller.setScene(scene); primaryStage.setScene(scene); primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() { @Override public void handle(final WindowEvent windowEvent) { controller.stopTasks(); } }); primaryStage.setTitle("Crafter Social/Profile Migration Tool (2.3->2.5)"); log.debug("Showing UI. {}", new Date()); primaryStage.show(); }