From 998d0518998edf3b6799a0902ca8b56de7c560c1 Mon Sep 17 00:00:00 2001 From: Jan Kozusznik <jan@kozusznik.cz> Date: Mon, 12 Feb 2018 13:07:34 +0100 Subject: [PATCH] incoporate suggestions --- .../src/main/java/cz/it4i/fiji/haas/ui/FXFrame.java | 3 --- .../src/main/java/cz/it4i/fiji/haas/ui/JFXPanel.java | 12 +++++++----- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/FXFrame.java b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/FXFrame.java index c0c4bcf6..3aa53cb4 100644 --- a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/FXFrame.java +++ b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/FXFrame.java @@ -37,9 +37,6 @@ public abstract class FXFrame<T extends Parent&CloseableControl> extends JDialog init(); } - /** - * Create the JFXPanel that make the link between Swing (IJ) and JavaFX plugin. - */ private void init() { addWindowListener(new WindowAdapter() { @Override diff --git a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/JFXPanel.java b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/JFXPanel.java index 6cc2b833..a26bbb67 100644 --- a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/JFXPanel.java +++ b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/JFXPanel.java @@ -10,6 +10,10 @@ import javafx.application.Platform; import javafx.scene.Parent; import javafx.scene.Scene; +/** + * JFXPanel makes the link between Swing (IJ) and JavaFX plugin. + */ + public class JFXPanel<T extends Parent> extends javafx.embed.swing.JFXPanel { private static final long serialVersionUID = 1L; @@ -17,15 +21,14 @@ public class JFXPanel<T extends Parent> extends javafx.embed.swing.JFXPanel { private static Logger log = LoggerFactory.getLogger(cz.it4i.fiji.haas.ui.JFXPanel.class); private T control; - + public JFXPanel(Supplier<T> fxSupplier) { Platform.setImplicitExit(false); - // The call to runLater() avoid a mix between JavaFX thread and Swing thread. control = fxSupplier.get(); - initFX(); + // The call to runLater() avoid a mix between JavaFX thread and Swing thread. + CloseableControl.runOnFxThread(() -> initFX()); } - private void initFX() { // Init the root layout // Show the scene containing the root layout. @@ -38,7 +41,6 @@ public class JFXPanel<T extends Parent> extends javafx.embed.swing.JFXPanel { this.setMinimumSize(dim); this.setMaximumSize(dim); this.setPreferredSize(dim); - // this.setSize((int) scene.getWidth(), (int) scene.getHeight()); }; public T getControl() { -- GitLab