فهرست منبع

SDK SceneComposer : bugfix in the ShortcutManager, prevent from setting the currentShorcut to NULL when there are no new activable shortcuts

Maselbas 10 سال پیش
والد
کامیت
e27b8a5739
1فایلهای تغییر یافته به همراه8 افزوده شده و 5 حذف شده
  1. 8 5
      sdk/jme3-scenecomposer/src/com/jme3/gde/scenecomposer/tools/shortcuts/ShortcutManager.java

+ 8 - 5
sdk/jme3-scenecomposer/src/com/jme3/gde/scenecomposer/tools/shortcuts/ShortcutManager.java

@@ -66,8 +66,11 @@ public class ShortcutManager {
     }
 
     public boolean activateShortcut(KeyInputEvent kie) {
-        currentShortcut = getActivableShortcut(kie);
-        return isActive();
+        ShortcutTool newShortcut = getActivableShortcut(kie);
+        if(newShortcut != null){
+            currentShortcut = newShortcut;
+        }
+        return newShortcut != null;
     }
 
     public void doKeyPressed(KeyInputEvent kie) {
@@ -182,13 +185,13 @@ public class ShortcutManager {
 
     public static boolean checkAxisKey(KeyInputEvent kie, Vector3f axisStore) {
         if (kie.getKeyCode() == KeyInput.KEY_X) {
-            axisStore = Vector3f.UNIT_X;
+            axisStore.set(Vector3f.UNIT_X);
             return true;
         } else if (kie.getKeyCode() == KeyInput.KEY_Y) {
-            axisStore = Vector3f.UNIT_Y;
+            axisStore.set(Vector3f.UNIT_Y);
             return true;
         } else if (kie.getKeyCode() == KeyInput.KEY_Z) {
-            axisStore = Vector3f.UNIT_Z;
+            axisStore.set(Vector3f.UNIT_Z);
             return true;
         }
         return false;