diff --git a/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java b/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java index 88979a21f..b4d3a2f56 100644 --- a/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java +++ b/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java @@ -75,8 +75,7 @@ import org.openide.util.NbPreferences; import org.openide.util.lookup.Lookups; /** - *

- *

+ * * @author normenhansen */ @SuppressWarnings("unchecked") @@ -115,6 +114,7 @@ public class SceneApplication extends Application implements LookupProvider { private ViewPort overlayView; boolean useCanvas = false; private BulletAppState physicsState; + private Thread thread; public SceneApplication() { progressHandle.start(7); @@ -200,6 +200,7 @@ public class SceneApplication extends Application implements LookupProvider { @Override public void initialize() { + thread = Thread.currentThread(); try { super.initialize(); { @@ -600,4 +601,12 @@ public class SceneApplication extends Application implements LookupProvider { public void setActiveCameraController(AbstractCameraController activeCamController) { this.activeCamController = activeCamController; } + + public boolean isOgl() { + return Thread.currentThread() == thread; + } + + public boolean isAwt() { + return java.awt.EventQueue.isDispatchThread(); + } } diff --git a/sdk/jme3-terrain-editor/src/com/jme3/gde/terraineditor/TerrainEditorTopComponent.java b/sdk/jme3-terrain-editor/src/com/jme3/gde/terraineditor/TerrainEditorTopComponent.java index 074568e03..1c062f3ce 100644 --- a/sdk/jme3-terrain-editor/src/com/jme3/gde/terraineditor/TerrainEditorTopComponent.java +++ b/sdk/jme3-terrain-editor/src/com/jme3/gde/terraineditor/TerrainEditorTopComponent.java @@ -1087,32 +1087,25 @@ public final class TerrainEditorTopComponent extends TopComponent implements Sce private void setSceneInfo(final JmeNode jmeNode, final boolean active) { final TerrainEditorTopComponent inst = this; - java.awt.EventQueue.invokeLater(new Runnable() { - - public void run() { - if (jmeNode != null) { - } else { - } + if (jmeNode != null) { + } else { + } - if (!active) { - result.removeLookupListener(inst); - close(); - } else { - open(); - requestActive(); - } - } - }); + if (!active) { + result.removeLookupListener(inst); + close(); + } else { + open(); + requestActive(); + } } public void sceneClosed(SceneRequest request) { if (request.equals(currentRequest)) { -// if (checkSaved()) { SceneApplication.getApplication().removeSceneListener(this); setSceneInfo(null, false); currentRequest = null; cleanupControllers(); -// } } }