2 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 * Copyright (C) 2014-2014 - Scilab Enterprises - Clement DAVID
5 * This file must be used under the terms of the CeCILL.
6 * This source file is licensed as described in the file COPYING, which
7 * you should have received as part of this distribution. The terms
8 * are also available at
9 * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
17 #include "utilities.hxx"
19 #include "model/BaseObject.hxx"
20 #include "model/Annotation.hxx"
21 #include "model/Diagram.hxx"
22 #include "model/Block.hxx"
23 #include "model/Link.hxx"
24 #include "model/Port.hxx"
26 namespace org_scilab_modules_scicos
29 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, double v)
48 else if (k == DIAGRAM)
66 model::Port* o = static_cast<model::Port*>(getObject(uid));
70 return o->setFiring(v);
78 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, int v)
91 model::Block* o = static_cast<model::Block*>(getObject(uid));
94 case SIM_FUNCTION_API:
95 return o->setSimFunctionApi(v);
97 return o->setNZcross(v);
99 return o->setNMode(v);
104 else if (k == DIAGRAM)
114 model::Link* o = static_cast<model::Link*>(getObject(uid));
118 return o->setColor(v);
120 return o->setKind(v);
127 model::Port* o = static_cast<model::Port*>(getObject(uid));
131 return o->setKind(v);
139 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, bool v)
158 else if (k == DIAGRAM)
176 model::Port* o = static_cast<model::Port*>(getObject(uid));
180 return o->setImplicit(v);
188 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, ScicosID v)
193 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
197 return o->setParentDiagram(v);
204 model::Block* o = static_cast<model::Block*>(getObject(uid));
208 return o->setParentDiagram(v);
213 else if (k == DIAGRAM)
223 model::Link* o = static_cast<model::Link*>(getObject(uid));
227 return o->setParentDiagram(v);
229 return o->setSourcePort(v);
230 case DESTINATION_PORT:
231 return o->setDestinationPort(v);
238 model::Port* o = static_cast<model::Port*>(getObject(uid));
242 return o->setSourceBlock(v);
243 case CONNECTED_SIGNALS:
244 return o->setConnectedSignals(std::vector<ScicosID> (1, v));
252 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, std::string v)
257 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
261 return o->setDescription(v);
263 return o->setFont(v);
265 return o->setFontSize(v);
272 model::Block* o = static_cast<model::Block*>(getObject(uid));
275 case INTERFACE_FUNCTION:
276 return o->setInterfaceFunction(v);
277 case SIM_FUNCTION_NAME:
278 return o->setSimFunctionName(v);
280 return o->setSimBlocktype(v);
282 return o->setStyle(v);
284 return o->setLabel(v);
291 else if (k == DIAGRAM)
293 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
297 return o->setTitle(v);
299 return o->setPath(v);
301 return o->setVersionNumber(v);
308 model::Link* o = static_cast<model::Link*>(getObject(uid));
312 return o->setLabel(v);
319 model::Port* o = static_cast<model::Port*>(getObject(uid));
323 return o->setStyle(v);
325 return o->setLabel(v);
333 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, const std::vector<double>& v)
338 model::Annotation* o = static_cast<model::Annotation*>(getObject(uid));
342 return o->setGeometry(v);
349 model::Block* o = static_cast<model::Block*>(getObject(uid));
353 return o->setGeometry(v);
355 return o->setAngle(v);
357 return o->setState(v);
359 return o->setDState(v);
361 return o->setRpar(v);
366 else if (k == DIAGRAM)
368 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
372 return o->setProperties(v);
379 model::Link* o = static_cast<model::Link*>(getObject(uid));
383 return o->setControlPoints(v);
385 return o->setThick(v);
401 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, const std::vector<int>& v)
414 model::Block* o = static_cast<model::Block*>(getObject(uid));
418 return o->setSimDepUT(v);
420 return o->setIpar(v);
425 else if (k == DIAGRAM)
443 model::Port* o = static_cast<model::Port*>(getObject(uid));
447 return o->setDataType(this, v);
455 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, const std::vector<std::string>& v)
468 model::Block* o = static_cast<model::Block*>(getObject(uid));
472 return o->setExprs(v);
477 else if (k == DIAGRAM)
479 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
482 case DIAGRAM_CONTEXT:
483 return o->setContext(v);
507 update_status_t Model::setObjectProperty(ScicosID uid, kind_t k, object_properties_t p, const std::vector<ScicosID>& v)
520 model::Block* o = static_cast<model::Block*>(getObject(uid));
530 return o->setEout(v);
535 else if (k == DIAGRAM)
537 model::Diagram* o = static_cast<model::Diagram*>(getObject(uid));
541 return o->setChildren(v);
556 model::Port* o = static_cast<model::Port*>(getObject(uid));
559 case CONNECTED_SIGNALS:
560 return o->setConnectedSignals(v);
568 } /* namespace org_scilab_modules_scicos */