Quellcode durchsuchen

SDK :
- Fixed focus issue in the sdk (part 1)

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9607 75d07b2b-3a1a-0410-a2c5-0572b91ccdca

rem..om vor 13 Jahren
Ursprung
Commit
82e86bd947

+ 11 - 7
jme3-core/src/com/jme3/gde/core/scene/controller/AbstractCameraController.java

@@ -27,6 +27,7 @@ package com.jme3.gde.core.scene.controller;
 import com.jme3.app.Application;
 import com.jme3.app.state.AbstractAppState;
 import com.jme3.app.state.AppStateManager;
+import com.jme3.gde.core.Installer;
 import com.jme3.gde.core.scene.SceneApplication;
 import com.jme3.gde.core.scene.controller.toolbars.CameraToolbar;
 import com.jme3.gde.core.sceneviewer.SceneViewerTopComponent;
@@ -50,6 +51,7 @@ import com.jme3.renderer.RenderManager;
 import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutionException;
 import org.openide.util.Exceptions;
+import org.openide.util.NbPreferences;
 
 /**
  *
@@ -418,13 +420,15 @@ public abstract class AbstractCameraController extends AbstractAppState implemen
     public void onMouseButtonEvent(MouseButtonEvent mbe) {
         //on a click release we request the focus for the top component
         //this allow netbeans to catch keyEvents and trigger actions according to keymapping
-        if (mbe.isReleased()) {
-            java.awt.EventQueue.invokeLater(new Runnable() {
-
-                public void run() {
-                    SceneViewerTopComponent.findInstance().requestActive();
-                }
-            });
+        if ("true".equals(NbPreferences.forModule(Installer.class).get("use_lwjgl_canvas", "false"))) {
+            if (mbe.isReleased()) {
+                java.awt.EventQueue.invokeLater(new Runnable() {
+
+                    public void run() {
+                        SceneViewerTopComponent.findInstance().requestActive();
+                    }
+                });
+            }
         }
 
     }

+ 50 - 49
jme3-core/src/com/jme3/gde/core/sceneviewer/SceneViewerTopComponent.java

@@ -24,7 +24,6 @@
  */
 package com.jme3.gde.core.sceneviewer;
 
-import com.jme3.gde.core.Installer;
 import com.jme3.gde.core.filters.FilterExplorerTopComponent;
 import com.jme3.gde.core.scene.SceneApplication;
 import com.jme3.gde.core.scene.SceneRequest;
@@ -49,7 +48,6 @@ import org.openide.awt.UndoRedo;
 import org.openide.util.Exceptions;
 import org.openide.util.HelpCtx;
 import org.openide.util.Lookup;
-import org.openide.util.NbPreferences;
 
 /**
  * Top component which displays something.
@@ -80,6 +78,7 @@ public final class SceneViewerTopComponent extends TopComponent {
             app = SceneApplication.getApplication();
 //            oglCanvas = ((JmeCanvasContext) app.getContext()).getCanvas();
             oglCanvas = app.getMainPanel();
+            oglCanvas.setFocusable(false);
             oGLPanel.add(oglCanvas);
 
         } catch (Exception e) {
@@ -92,59 +91,61 @@ public final class SceneViewerTopComponent extends TopComponent {
 
         //We add a mouse wheel listener to the top conmponent in order to correctly dispatch the event ot the cam controller
         //the oGLPanel may naver have the focus.
-        if ("true".equals(NbPreferences.forModule(Installer.class).get("use_lwjgl_canvas", "false"))) {
-            addMouseWheelListener(new MouseWheelListener() {
+        //  if ("true".equals(NbPreferences.forModule(Installer.class).get("use_lwjgl_canvas", "false"))) {
+        addMouseWheelListener(new MouseWheelListener() {
 
-                public void mouseWheelMoved(final MouseWheelEvent e) {
-                    SceneApplication.getApplication().enqueue(new Callable<Void>() {
+            public void mouseWheelMoved(final MouseWheelEvent e) {
+                SceneApplication.getApplication().enqueue(new Callable<Void>() {
 
-                        public Void call() throws Exception {
-                            String action = "MouseWheel-";
-                            if (e.getWheelRotation() < 0) {
-                                action = "MouseWheel";
-                            }
+                    public Void call() throws Exception {
+                        String action = "MouseWheel-";
+                        if (e.getWheelRotation() < 0) {
+                            action = "MouseWheel";
+                        }
+                        if (app.getActiveCameraController() != null) {
                             app.getActiveCameraController().onAnalog(action, e.getWheelRotation(), 0);
-                            return null;
                         }
-                    });
-                }
-            });
-            addKeyListener(new KeyListener() {
-
-                public void keyTyped(KeyEvent evt) {
-                }
-
-                public void keyPressed(final KeyEvent evt) {
-                    SceneApplication.getApplication().enqueue(new Callable<Void>() {
-
-                        public Void call() throws Exception {
-                            int code = AwtKeyInput.convertAwtKey(evt.getKeyCode());
-                            KeyInputEvent keyEvent = new KeyInputEvent(code, evt.getKeyChar(), true, false);
-                            keyEvent.setTime(evt.getWhen());
-                            if (app.getActiveCameraController() != null) {
-                                app.getActiveCameraController().onKeyEvent(keyEvent);
-                            }
-                            return null;
+                        return null;
+                    }
+                });
+            }
+        });
+        addKeyListener(new KeyListener() {
+
+            public void keyTyped(KeyEvent evt) {
+            }
+
+            public void keyPressed(final KeyEvent evt) {
+                SceneApplication.getApplication().enqueue(new Callable<Void>() {
+
+                    public Void call() throws Exception {
+                        int code = AwtKeyInput.convertAwtKey(evt.getKeyCode());
+                        KeyInputEvent keyEvent = new KeyInputEvent(code, evt.getKeyChar(), true, false);
+                        keyEvent.setTime(evt.getWhen());
+                        if (app.getActiveCameraController() != null) {
+                            app.getActiveCameraController().onKeyEvent(keyEvent);
                         }
-                    });
-                }
-
-                public void keyReleased(final KeyEvent evt) {
-                    SceneApplication.getApplication().enqueue(new Callable<Void>() {
-
-                        public Void call() throws Exception {
-                            int code = AwtKeyInput.convertAwtKey(evt.getKeyCode());
-                            KeyInputEvent keyEvent = new KeyInputEvent(code, evt.getKeyChar(), false, false);
-                            keyEvent.setTime(evt.getWhen());
-                            if (app.getActiveCameraController() != null) {
-                                app.getActiveCameraController().onKeyEvent(keyEvent);
-                            }
-                            return null;
+                        return null;
+                    }
+                });
+            }
+
+            public void keyReleased(final KeyEvent evt) {
+                SceneApplication.getApplication().enqueue(new Callable<Void>() {
+
+                    public Void call() throws Exception {
+                        int code = AwtKeyInput.convertAwtKey(evt.getKeyCode());
+                        KeyInputEvent keyEvent = new KeyInputEvent(code, evt.getKeyChar(), false, false);
+                        keyEvent.setTime(evt.getWhen());
+                        if (app.getActiveCameraController() != null) {
+                            app.getActiveCameraController().onKeyEvent(keyEvent);
                         }
-                    });
-                }
-            });
-        }
+                        return null;
+                    }
+                });
+            }
+        });
+        //}
 
     }