]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.spreadsheet.graph/src/org/simantics/spreadsheet/graph/SpreadsheetNodeManager.java
Bugfixing sheets
[simantics/platform.git] / bundles / org.simantics.spreadsheet.graph / src / org / simantics / spreadsheet / graph / SpreadsheetNodeManager.java
index 70ddf56bad8813d73f8b599c44c31bdb76dfbf86..a7bee9d4b5e0daf0af55359e3482cf5616af06f1 100644 (file)
@@ -21,6 +21,7 @@ import org.simantics.spreadsheet.solver.SpreadsheetCellContent;
 import org.simantics.spreadsheet.solver.SpreadsheetCellContentExpression;
 import org.simantics.spreadsheet.solver.SpreadsheetCellEditable;
 import org.simantics.spreadsheet.solver.SpreadsheetFormula;
+import org.simantics.spreadsheet.solver.SpreadsheetSCLConstant;
 import org.simantics.spreadsheet.solver.SpreadsheetTypeNode;
 import org.simantics.structural.stubs.StructuralResource2;
 
@@ -29,6 +30,7 @@ public class SpreadsheetNodeManager extends StandardVariableNodeManager<SheetNod
 
     public SpreadsheetNodeManager(SpreadsheetRealm realm) {
         super(realm, realm.getEngine());
+        new Exception().printStackTrace();
         realm.getEngine().registerListener(new SpreadsheetBookListener() {
             
             @Override
@@ -37,9 +39,11 @@ public class SpreadsheetNodeManager extends StandardVariableNodeManager<SheetNod
                     @Override
                     public void run() {
                         for(SpreadsheetCell cell : cells) {
-                            System.err.println("Modification in cell " + cell);
+                            System.err.println("Modification in cell " + cell.getName());
                             refreshVariable(new SpreadsheetCellContent(cell));
-                            refreshVariable(new SpreadsheetCellContentExpression(cell));
+                            Object content = cell.getContent();
+                            if(content instanceof SpreadsheetFormula || content instanceof SpreadsheetSCLConstant)
+                                refreshVariable(new SpreadsheetCellContentExpression(cell));
                         }
                     }
                 });