From: Clément DAVID Date: Fri, 20 Nov 2015 14:28:08 +0000 (+0100) Subject: Xcos decoding: manage mixed xcos files X-Git-Tag: 6.0.0-beta-1~216 X-Git-Url: http://gitweb.scilab.org/?p=scilab.git;a=commitdiff_plain;h=20ec03bd3249c3c0c8765e26a6b74119fcb6527b Xcos decoding: manage mixed xcos files Some Xcos / Zcos files store partially decoded sub-diagrams. This commit manage such sub-diagrams contained into such a sub-diagrams. After this conversion, the saved xcos / zcos files will contain a complete XML representation. Change-Id: Ia7dc4168405c8716c73c52461272b02c3117589d --- diff --git a/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/scicos/BlockModelElement.java b/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/scicos/BlockModelElement.java index 3728d5b..244aa48 100644 --- a/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/scicos/BlockModelElement.java +++ b/scilab/modules/xcos/src/java/org/scilab/modules/xcos/io/scicos/BlockModelElement.java @@ -199,7 +199,13 @@ final class BlockModelElement extends BlockPartsElement { // rpar field++; - controller.setObjectProperty(into.getUID(), into.getKind(), ObjectProperties.RPAR, toVectorOfDouble((ScilabDouble) data.get(field))); + if (data.get(field) instanceof ScilabMList) { + try { + new DiagramElement(new JavaController()).decode((ScilabMList) data.get(field), new XcosDiagram(into.getUID(), into.getKind())); + } catch (ScicosFormatException e) {} + } else if (data.get(field) instanceof ScilabDouble ) { + controller.setObjectProperty(into.getUID(), into.getKind(), ObjectProperties.RPAR, toVectorOfDouble((ScilabDouble) data.get(field))); + } // ipar field++;