From d685d782a1a7565bcc37c4bfa454c328a1972068 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Cl=C3=A9ment=20DAVID?= Date: Thu, 10 Mar 2016 15:40:56 +0100 Subject: [PATCH] Xcos save/load: manage dep_ut values Change-Id: I8145493271e86d9f483d3a824a47065c02452508 --- .../scilab/modules/xcos/io/sax/BlockHandler.java | 11 +++++++++++ .../scilab/modules/xcos/io/writer/BlockWriter.java | 6 ++++++ 2 files changed, 17 insertions(+) diff --git a/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/sax/BlockHandler.java b/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/sax/BlockHandler.java index 01f8672..e7c29bc 100644 --- a/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/sax/BlockHandler.java +++ b/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/sax/BlockHandler.java @@ -19,6 +19,7 @@ import java.util.Arrays; import org.scilab.modules.xcos.Kind; import org.scilab.modules.xcos.ObjectProperties; +import org.scilab.modules.xcos.VectorOfInt; import org.scilab.modules.xcos.block.AfficheBlock; import org.scilab.modules.xcos.block.BasicBlock; import org.scilab.modules.xcos.block.BasicBlock.SimulationFunctionType; @@ -171,6 +172,16 @@ class BlockHandler implements ScilabHandler { if (v != null) { saxHandler.controller.setObjectProperty(uid, kind, ObjectProperties.SIM_BLOCKTYPE, v); } + VectorOfInt vecOfInt = new VectorOfInt(2); + v = atts.getValue("dependsOnU"); + if ("1".equals(v)) { + vecOfInt.set(0, 1); + } + v = atts.getValue("dependsOnT"); + if ("1".equals(v)) { + vecOfInt.set(1, 1); + } + saxHandler.controller.setObjectProperty(uid, kind, ObjectProperties.SIM_DEP_UT, vecOfInt); v = atts.getValue("simulationFunctionType"); if (v != null) { SimulationFunctionType type = SimulationFunctionType.valueOf(v); diff --git a/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/writer/BlockWriter.java b/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/writer/BlockWriter.java index c6ee031..f02fa57 100644 --- a/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/writer/BlockWriter.java +++ b/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/writer/BlockWriter.java @@ -21,6 +21,7 @@ import javax.xml.stream.XMLStreamException; import org.scilab.modules.xcos.Kind; import org.scilab.modules.xcos.ObjectProperties; +import org.scilab.modules.xcos.VectorOfInt; import org.scilab.modules.xcos.VectorOfScicosID; import org.scilab.modules.xcos.block.BasicBlock; import org.scilab.modules.xcos.block.BasicBlock.SimulationFunctionType; @@ -65,6 +66,11 @@ public class BlockWriter extends ScilabWriter { shared.controller.getObjectProperty(uid, kind, ObjectProperties.SIM_BLOCKTYPE, v); shared.stream.writeAttribute("blockType", v[0]); + VectorOfInt vecOfInt = new VectorOfInt(2); + shared.controller.getObjectProperty(uid, kind, ObjectProperties.SIM_DEP_UT, vecOfInt); + shared.stream.writeAttribute("dependsOnU", Integer.toString(vecOfInt.get(0))); + shared.stream.writeAttribute("dependsOnT", Integer.toString(vecOfInt.get(1))); + shared.controller.getObjectProperty(uid, kind, ObjectProperties.SIM_FUNCTION_NAME, v); shared.stream.writeAttribute("simulationFunctionName", v[0]); -- 1.7.9.5