@Override public void handle(WebEvent<String> event) { synchronized (lock) { text.set(event.getData()); lock.notifyAll(); boolean initial = true; while (true) { try { if (dismissQueue.get() > 0) { dismissQueue.decrementAndGet(); break; } if (acceptQueue.get() > 0) { acceptQueue.decrementAndGet(); break; } if (initial) { lock.wait(timeouts.get().getAlertTimeoutMS()); initial = false; } else { break; } } catch (InterruptedException e) {} } text.set(NO_TEXT_VALUE); } } }
private void createScene(final String htmlContent) { Platform.setImplicitExit(false); Platform.runLater(() -> { WebView view = new WebView(); engine = view.getEngine(); engine.setOnStatusChanged(event -> SwingUtilities.invokeLater(() -> lblStatus.setText(event.getData()))); engine.getLoadWorker().workDoneProperty() .addListener((ChangeListener<Number>) (observableValue, oldValue, newValue) -> SwingUtilities .invokeLater(() -> progressBar.setValue(newValue.intValue()))); engine.getLoadWorker().exceptionProperty() .addListener((ObservableValue<? extends Throwable> o, Throwable old, final Throwable value) -> { if (engine.getLoadWorker().getState() == State.FAILED) { SwingUtilities.invokeLater(() -> JOptionPane .showMessageDialog( resultsScrollPane, (value != null) ? engine .getLocation() + "\n" + value.getMessage() : engine.getLocation() + "\nUnexpected error.", "Loading error...", JOptionPane.ERROR_MESSAGE)); } }); jfxPanel.setScene(new Scene(view)); }); }
@Override public void handle(WebEvent<String> t) { final Stage dialogStage = new Stage(); dialogStage.initModality(Modality.WINDOW_MODAL); dialogStage.initOwner(owner); ResourceBundle r = ResourceBundle.getBundle("org/netbeans/html/boot/fx/Bundle"); // NOI18N dialogStage.setTitle(r.getString("AlertTitle")); // NOI18N final Button button = new Button(r.getString("AlertCloseButton")); // NOI18N final Text text = new Text(t.getData()); VBox box = new VBox(); box.setAlignment(Pos.CENTER); box.setSpacing(10); box.setPadding(new Insets(10)); box.getChildren().addAll(text, button); dialogStage.setScene(new Scene(box)); button.setCancelButton(true); button.setOnAction(new CloseDialogHandler(dialogStage, null)); dialogStage.centerOnScreen(); dialogStage.showAndWait(); } });
@Override public void handle(WebEvent<String> t) { final Stage dialogStage = new Stage(); dialogStage.initModality(Modality.WINDOW_MODAL); dialogStage.setTitle("Warning"); final Button button = new Button("Close"); final Text text = new Text(t.getData()); VBox box = new VBox(); box.setAlignment(Pos.CENTER); box.setSpacing(10); box.setPadding(new Insets(10)); box.getChildren().addAll(text, button); dialogStage.setScene(new Scene(box)); button.setCancelButton(true); button.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent t) { dialogStage.close(); } }); dialogStage.centerOnScreen(); dialogStage.showAndWait(); } });