Browse Source

Merge pull request #357 from nickidebruyn/jme-mesh-null

NullpointerException on Mesh selection, resolves #356
Toni Helenius 3 years ago
parent
commit
18b8b0fd09

+ 3 - 1
jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeMesh.java

@@ -97,7 +97,9 @@ public class JmeMesh extends AbstractSceneExplorerNode{
 
 
         set.put(makeProperty(obj, int.class, "getId", "setId", "Id"));
         set.put(makeProperty(obj, int.class, "getId", "setId", "Id"));
         set.put(makeProperty(obj, Mesh.Mode.class, "getMode", "setMode", "Mode"));
         set.put(makeProperty(obj, Mesh.Mode.class, "getMode", "setMode", "Mode"));
-        set.put(makeProperty(obj, float.class, "getPointSize", "setPointSize", "Point Size"));
+        //Removed below property because it caused a nullpointer exception 
+        //because the getter and setter does not exist anymore, it was deprecated
+        //set.put(makeProperty(obj, float.class, "getPointSize", "setPointSize", "Point Size"));
 
 
         sheet.put(set);
         sheet.put(set);
         return sheet;
         return sheet;

+ 7 - 3
jme3-core/src/com/jme3/gde/core/sceneexplorer/nodes/JmeSpatialChildren.java

@@ -83,11 +83,15 @@ public class JmeSpatialChildren extends Children.Keys<Object> {
         setKeys(createKeys());
         setKeys(createKeys());
         refresh();
         refresh();
         
         
-        for (Node n : nodes) { // TODO: Why is nodes always empty? What about the Children's Children?
-            if (n instanceof AbstractSceneExplorerNode) {
-                ((AbstractSceneExplorerNode)n).refresh(immediate);
+        if (nodes != null) { //Added a null check just to make sure the UI don't crash
+            
+            for (Node n : nodes) { // TODO: Why is nodes always empty? What about the Children's Children?
+                if (n instanceof AbstractSceneExplorerNode) {
+                    ((AbstractSceneExplorerNode)n).refresh(immediate);
+                }
             }
             }
         }
         }
+
     }
     }
 
 
     public void setReadOnly(boolean cookie) {
     public void setReadOnly(boolean cookie) {