Pārlūkot izejas kodu

SDK : fixed scene explorer refresh when deleting a light node

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@7926 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
rem..om 14 gadi atpakaļ
vecāks
revīzija
acf2f435b9

+ 9 - 4
jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeLight.java

@@ -53,8 +53,8 @@ import org.openide.util.actions.SystemAction;
  *
  * @author normenhansen
  */
[email protected](service=SceneExplorerNode.class)
-public class JmeLight extends AbstractSceneExplorerNode{
[email protected](service = SceneExplorerNode.class)
+public class JmeLight extends AbstractSceneExplorerNode {
 
     private Spatial spatial;
     private Light light;
@@ -127,7 +127,13 @@ public class JmeLight extends AbstractSceneExplorerNode{
                     spatial.removeLight(light);
                     return null;
                 }
-            }).get();
+            }).get();            
+            if (getParentNode() instanceof JmeNode) {
+                JmeNode node = ((JmeNode) getParentNode());
+                if (node != null) {
+                    node.refresh(false);
+                }
+            }
         } catch (InterruptedException ex) {
             Exceptions.printStackTrace(ex);
         } catch (ExecutionException ex) {
@@ -142,5 +148,4 @@ public class JmeLight extends AbstractSceneExplorerNode{
     public Class getExplorerNodeClass() {
         return JmeLight.class;
     }
-
 }

+ 5 - 5
jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeSpatial.java

@@ -124,7 +124,6 @@ public class JmeSpatial extends AbstractSceneExplorerNode {
 //                    SystemAction.get(DeleteAction.class)
 //                };
 //    }
-
     @Override
     public Action[] getActions(boolean context) {
 //        return super.getActions(context);
@@ -196,10 +195,11 @@ public class JmeSpatial extends AbstractSceneExplorerNode {
                     return null;
                 }
             }).get();
-            //TODO: not a good cast
-            JmeNode node = ((JmeNode) getParentNode());
-            if (node != null) {
-                node.refresh(false);
+            if (getParentNode() instanceof JmeNode) {
+                JmeNode node = ((JmeNode) getParentNode());
+                if (node != null) {
+                    node.refresh(false);
+                }
             }
         } catch (InterruptedException ex) {
             Exceptions.printStackTrace(ex);