cpee 2.1.47 → 2.1.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/cockpit/index.html +1 -1
  3. data/cockpit/js/instance.js +15 -11
  4. data/cockpit/js/wfadaptor.js +18 -13
  5. data/cockpit/templates/Subprocess.xml +35 -371
  6. data/cockpit/templates/Wait.xml +7 -400
  7. data/cockpit/themes/compact/rngs/call.rng +8 -0
  8. data/cockpit/themes/compact/rngs/callmanipulate.rng +8 -0
  9. data/cockpit/themes/compact/rngs/closed_loop_control.rng +2 -2
  10. data/cockpit/themes/compact/rngs/closed_loop_measuring.rng +3 -3
  11. data/cockpit/themes/compact/theme.js +15 -9
  12. data/cockpit/themes/control/rngs/call.rng +8 -0
  13. data/cockpit/themes/control/rngs/callmanipulate.rng +8 -0
  14. data/cockpit/themes/control/rngs/closed_loop_control.rng +2 -2
  15. data/cockpit/themes/control/rngs/closed_loop_measuring.rng +3 -3
  16. data/cockpit/themes/control/theme.js +17 -11
  17. data/cockpit/themes/default/rngs/call.rng +8 -0
  18. data/cockpit/themes/default/rngs/callmanipulate.rng +8 -0
  19. data/cockpit/themes/default/rngs/closed_loop_control.rng +2 -2
  20. data/cockpit/themes/default/rngs/closed_loop_measuring.rng +3 -3
  21. data/cockpit/themes/default/theme.js +15 -9
  22. data/cockpit/themes/extended/rngs/call.rng +8 -0
  23. data/cockpit/themes/extended/rngs/callmanipulate.rng +8 -0
  24. data/cockpit/themes/extended/rngs/closed_loop_control.rng +2 -2
  25. data/cockpit/themes/extended/rngs/closed_loop_measuring.rng +3 -3
  26. data/cockpit/themes/extended/theme.js +15 -9
  27. data/cockpit/themes/model/theme.js +15 -9
  28. data/cockpit/themes/packed/rngs/call.rng +8 -0
  29. data/cockpit/themes/packed/rngs/callmanipulate.rng +8 -0
  30. data/cockpit/themes/packed/rngs/closed_loop_control.rng +2 -2
  31. data/cockpit/themes/packed/rngs/closed_loop_measuring.rng +3 -3
  32. data/cockpit/themes/packed/theme.js +15 -9
  33. data/cockpit/themes/preset/rngs/call.rng +8 -0
  34. data/cockpit/themes/preset/rngs/callmanipulate.rng +8 -0
  35. data/cockpit/themes/preset/rngs/closed_loop_control.rng +2 -2
  36. data/cockpit/themes/preset/rngs/closed_loop_measuring.rng +3 -3
  37. data/cockpit/themes/preset/theme.js +15 -9
  38. data/cpee.gemspec +1 -1
  39. data/lib/cpee/implementation.rb +5 -5
  40. data/lib/cpee/persistence.rb +19 -16
  41. data/server/executionhandlers/ruby/connection.rb +21 -11
  42. data/server/executionhandlers/ruby/desc.xml +107 -0
  43. data/server/executionhandlers/ruby/dsl_to_dslx.xsl +61 -8
  44. data/server/resources/test.pdf +0 -0
  45. data/server/routing/end.pid +1 -1
  46. data/server/routing/forward-events-00.pid +1 -1
  47. data/server/routing/forward-votes.pid +1 -1
  48. data/server/routing/persist.pid +1 -1
  49. data/tools/cpee +40 -9
  50. metadata +5 -8
  51. data/cockpit/templates/Wait.xml.attrs +0 -16
  52. data/server/routing/forward-events-01.pid +0 -1
  53. data/server/routing/forward-events-02.pid +0 -1
  54. data/server/routing/forward-events-03.pid +0 -1
  55. data/server/routing/forward-events-04.pid +0 -1
@@ -1,37 +1,19 @@
1
1
  <?xml version="1.0"?>
2
2
  <testset xmlns="http://cpee.org/ns/properties/2.0">
3
3
  <executionhandler>ruby</executionhandler>
4
- <dataelements>
5
- <i>0</i>
6
- </dataelements>
4
+ <dataelements/>
7
5
  <endpoints>
8
- <machine>machine</machine>
9
- <start_url>https://cpee.org/flow/start/url/</start_url>
10
6
  <timeout>https://cpee.org/services/timeout.php</timeout>
11
7
  <subprocess>https://cpee.org/flow/start/url/</subprocess>
12
- <sensor>sensor</sensor>
13
- <worklist>https-post://cpee.org/worklist/server/</worklist>
14
- <human>human</human>
15
- <plc>plc</plc>
16
- <user>https-post://cpee.org/services/timeout-user.php</user>
17
- <auto>https-post://cpee.org/services/timeout-auto.php</auto>
18
- <robot>robot</robot>
19
- <robot_subprocess>robot_subprocess</robot_subprocess>
20
- <send>send</send>
21
- <receive>receive</receive>
22
- <wait>wait</wait>
23
8
  </endpoints>
24
9
  <attributes>
25
10
  <info>Wait</info>
26
11
  <creator>Christine Ashcreek</creator>
27
12
  <author>Christine Ashcreek</author>
28
- <organisation1>http://cpee.org/~demo/orgviz/organisation_informatik.xml</organisation1>
29
- <customer>pilotfabrik</customer>
30
13
  <modeltype>CPEE</modeltype>
31
14
  <guarded>none</guarded>
32
- <status>development</status>
33
15
  <guarded_id/>
34
- <model_uuid>c09dad6b-547e-41a9-8f31-95c40e71c607</model_uuid>
16
+ <model_uuid>c92d0c0b-8bbd-40dd-baad-01c5616dfceb</model_uuid>
35
17
  <model_version/>
36
18
  <theme>extended</theme>
37
19
  <design_dir>Templates.dir</design_dir>
@@ -39,390 +21,12 @@
39
21
  </attributes>
40
22
  <description>
41
23
  <description xmlns="http://cpee.org/ns/description/1.0">
42
- <manipulate id="a5" label="initialize values"/>
43
- <parallel wait="-1" cancel="last">
44
- <parallel_branch pass="" local="">
45
- <call id="a2" endpoint="timeout">
46
- <parameters>
47
- <label>buy details for cold calls</label>
48
- <method>:post</method>
49
- <arguments>
50
- <timeout/>
51
- </arguments>
52
- </parameters>
53
- <annotations>
54
- <_timing>
55
- <_timing_weight/>
56
- <_timing_avg/>
57
- <explanations/>
58
- </_timing>
59
- <_context_data_analysis>
60
- <probes/>
61
- <ips/>
62
- </_context_data_analysis>
63
- <report>
64
- <url/>
65
- </report>
66
- <_notes>
67
- <_notes_general/>
68
- </_notes>
69
- </annotations>
70
- <documentation>
71
- <input/>
72
- <output/>
73
- <implementation>
74
- <description/>
75
- </implementation>
76
- </documentation>
77
- </call>
78
- </parallel_branch>
79
- <parallel_branch>
80
- <call id="a6" endpoint="timeout">
81
- <parameters>
82
- <label>participating in exhibitions</label>
83
- <method>:post</method>
84
- <arguments>
85
- <timeout/>
86
- </arguments>
87
- </parameters>
88
- <annotations>
89
- <_timing>
90
- <_timing_weight/>
91
- <_timing_avg/>
92
- <explanations/>
93
- </_timing>
94
- <_context_data_analysis>
95
- <probes/>
96
- <ips/>
97
- </_context_data_analysis>
98
- <report>
99
- <url/>
100
- </report>
101
- <_notes>
102
- <_notes_general/>
103
- </_notes>
104
- </annotations>
105
- <documentation>
106
- <input/>
107
- <output/>
108
- <implementation>
109
- <description/>
110
- </implementation>
111
- </documentation>
112
- </call>
113
- </parallel_branch>
114
- <parallel_branch pass="" local="">
115
- <call id="a7" endpoint="timeout">
116
- <parameters>
117
- <label>knowing someone</label>
118
- <method>:post</method>
119
- <arguments>
120
- <timeout/>
121
- </arguments>
122
- </parameters>
123
- <annotations>
124
- <_timing>
125
- <_timing_weight/>
126
- <_timing_avg/>
127
- <explanations/>
128
- </_timing>
129
- <_context_data_analysis>
130
- <probes/>
131
- <ips/>
132
- </_context_data_analysis>
133
- <report>
134
- <url/>
135
- </report>
136
- <_notes>
137
- <_notes_general/>
138
- </_notes>
139
- </annotations>
140
- <documentation>
141
- <input/>
142
- <output/>
143
- <implementation>
144
- <description/>
145
- </implementation>
146
- </documentation>
147
- </call>
148
- </parallel_branch>
149
- </parallel>
150
24
  <call id="a1" endpoint="timeout">
151
25
  <parameters>
152
- <label>call customer</label>
26
+ <label>Wait</label>
153
27
  <method>:post</method>
154
28
  <arguments>
155
- <timeout/>
156
- </arguments>
157
- </parameters>
158
- <annotations>
159
- <_timing>
160
- <_timing_weight/>
161
- <_timing_avg/>
162
- <explanations/>
163
- </_timing>
164
- <_context_data_analysis>
165
- <probes/>
166
- <ips/>
167
- </_context_data_analysis>
168
- <report>
169
- <url/>
170
- </report>
171
- <_notes>
172
- <_notes_general/>
173
- </_notes>
174
- </annotations>
175
- <documentation>
176
- <input/>
177
- <output/>
178
- <implementation>
179
- <description/>
180
- </implementation>
181
- </documentation>
182
- </call>
183
- <parallel wait="-1" cancel="last">
184
- <parallel_branch pass="" local="">
185
- <call id="a8" endpoint="timeout">
186
- <parameters>
187
- <label>determinate contact person</label>
188
- <method>:post</method>
189
- <arguments>
190
- <timeout/>
191
- </arguments>
192
- </parameters>
193
- <annotations>
194
- <_timing>
195
- <_timing_weight/>
196
- <_timing_avg/>
197
- <explanations/>
198
- </_timing>
199
- <_context_data_analysis>
200
- <probes/>
201
- <ips/>
202
- </_context_data_analysis>
203
- <report>
204
- <url/>
205
- </report>
206
- <_notes>
207
- <_notes_general/>
208
- </_notes>
209
- </annotations>
210
- <documentation>
211
- <input/>
212
- <output/>
213
- <implementation>
214
- <description/>
215
- </implementation>
216
- </documentation>
217
- </call>
218
- </parallel_branch>
219
- <parallel_branch pass="" local="">
220
- <call id="a9" endpoint="timeout">
221
- <parameters>
222
- <label>determinate budget</label>
223
- <method>:post</method>
224
- <arguments>
225
- <timeout/>
226
- </arguments>
227
- </parameters>
228
- <annotations>
229
- <_timing>
230
- <_timing_weight/>
231
- <_timing_avg/>
232
- <explanations/>
233
- </_timing>
234
- <_context_data_analysis>
235
- <probes/>
236
- <ips/>
237
- </_context_data_analysis>
238
- <report>
239
- <url/>
240
- </report>
241
- <_notes>
242
- <_notes_general/>
243
- </_notes>
244
- </annotations>
245
- <documentation>
246
- <input/>
247
- <output/>
248
- <implementation>
249
- <description/>
250
- </implementation>
251
- </documentation>
252
- </call>
253
- </parallel_branch>
254
- </parallel>
255
- <choose mode="exclusive">
256
- <alternative condition="customer is interested">
257
- <_probability>
258
- <_probability_min/>
259
- <_probability_max/>
260
- <_probability_avg/>
261
- </_probability>
262
- </alternative>
263
- <otherwise>
264
- <choose mode="exclusive">
265
- <alternative condition="customer is rich">
266
- <call id="a10" endpoint="timeout">
267
- <parameters>
268
- <label>head of development tries to acquire the customer</label>
269
- <method>:post</method>
270
- <arguments>
271
- <timeout/>
272
- </arguments>
273
- </parameters>
274
- <annotations>
275
- <_timing>
276
- <_timing_weight/>
277
- <_timing_avg/>
278
- <explanations/>
279
- </_timing>
280
- <_context_data_analysis>
281
- <probes/>
282
- <ips/>
283
- </_context_data_analysis>
284
- <report>
285
- <url/>
286
- </report>
287
- <_notes>
288
- <_notes_general/>
289
- </_notes>
290
- </annotations>
291
- <documentation>
292
- <input/>
293
- <output/>
294
- <implementation>
295
- <description/>
296
- </implementation>
297
- </documentation>
298
- </call>
299
- <_probability>
300
- <_probability_min/>
301
- <_probability_max/>
302
- <_probability_avg/>
303
- </_probability>
304
- <terminate/>
305
- </alternative>
306
- <otherwise>
307
- <terminate/>
308
- </otherwise>
309
- </choose>
310
- </otherwise>
311
- </choose>
312
- <call id="a11" endpoint="timeout">
313
- <parameters>
314
- <label>give presentation</label>
315
- <method>:post</method>
316
- <arguments>
317
- <timeout/>
318
- </arguments>
319
- </parameters>
320
- <annotations>
321
- <_timing>
322
- <_timing_weight/>
323
- <_timing_avg/>
324
- <explanations/>
325
- </_timing>
326
- <_context_data_analysis>
327
- <probes/>
328
- <ips/>
329
- </_context_data_analysis>
330
- <report>
331
- <url/>
332
- </report>
333
- <_notes>
334
- <_notes_general/>
335
- </_notes>
336
- </annotations>
337
- <documentation>
338
- <input/>
339
- <output/>
340
- <implementation>
341
- <description/>
342
- </implementation>
343
- </documentation>
344
- </call>
345
- <call id="a3" endpoint="">
346
- <parameters>
347
- <label/>
348
- <method>:post</method>
349
- <arguments/>
350
- </parameters>
351
- <annotations>
352
- <_timing>
353
- <_timing_weight/>
354
- <_timing_avg/>
355
- <explanations/>
356
- </_timing>
357
- <_context_data_analysis>
358
- <probes/>
359
- <ips/>
360
- </_context_data_analysis>
361
- <report>
362
- <url/>
363
- </report>
364
- <_notes>
365
- <_notes_general/>
366
- </_notes>
367
- </annotations>
368
- <documentation>
369
- <input/>
370
- <output/>
371
- <implementation>
372
- <description/>
373
- </implementation>
374
- </documentation>
375
- </call>
376
- <choose mode="exclusive">
377
- <alternative condition="contacted in 2 weeks">
378
- <_probability>
379
- <_probability_min/>
380
- <_probability_max/>
381
- <_probability_avg/>
382
- </_probability>
383
- </alternative>
384
- <otherwise>
385
- <call id="a12" endpoint="timeout">
386
- <parameters>
387
- <label>sales representative calls the customer</label>
388
- <method>:post</method>
389
- <arguments>
390
- <timeout/>
391
- </arguments>
392
- </parameters>
393
- <annotations>
394
- <_timing>
395
- <_timing_weight/>
396
- <_timing_avg/>
397
- <explanations/>
398
- </_timing>
399
- <_context_data_analysis>
400
- <probes/>
401
- <ips/>
402
- </_context_data_analysis>
403
- <report>
404
- <url/>
405
- </report>
406
- <_notes>
407
- <_notes_general/>
408
- </_notes>
409
- </annotations>
410
- <documentation>
411
- <input/>
412
- <output/>
413
- <implementation>
414
- <description/>
415
- </implementation>
416
- </documentation>
417
- </call>
418
- </otherwise>
419
- </choose>
420
- <call id="a4" endpoint="timeout">
421
- <parameters>
422
- <label>create a quation</label>
423
- <method>:post</method>
424
- <arguments>
425
- <timeout/>
29
+ <timeout>2</timeout>
426
30
  </arguments>
427
31
  </parameters>
428
32
  <annotations>
@@ -431,6 +35,9 @@
431
35
  <_timing_avg/>
432
36
  <explanations/>
433
37
  </_timing>
38
+ <_shifting>
39
+ <_shifting_type>Duration</_shifting_type>
40
+ </_shifting>
434
41
  <_context_data_analysis>
435
42
  <probes/>
436
43
  <ips/>
@@ -27,6 +27,14 @@
27
27
  </element>
28
28
  </element>
29
29
  <element name="annotations" rngui:header="Annotations">
30
+ <element name="_generic" rngui:header="Generic" rngui:fold="closed">
31
+ <zeroOrMore rngui:label="Create Annotation Pair">
32
+ <element rngui:label="Name" rngui:labeltype="xml">
33
+ <anyName/>
34
+ <data type="string" rngui:label="Value"/>
35
+ </element>
36
+ </zeroOrMore>
37
+ </element>
30
38
  <element name="_timing" rngui:header="Timing" rngui:fold="closed">
31
39
  <element name="_timing_weight" rngui:label="&#x3C9; - Weight">
32
40
  <data type="float" rngui:label="[0,1]"/>
@@ -50,6 +50,14 @@
50
50
  </element>
51
51
  </element>
52
52
  <element name="annotations" rngui:header="Annotations">
53
+ <element name="_generic" rngui:header="Generic" rngui:fold="closed">
54
+ <zeroOrMore rngui:label="Create Annotation Pair">
55
+ <element rngui:label="Name" rngui:labeltype="xml">
56
+ <anyName/>
57
+ <data type="string" rngui:label="Value"/>
58
+ </element>
59
+ </zeroOrMore>
60
+ </element>
53
61
  <element name="_timing" rngui:header="Timing" rngui:fold="closed">
54
62
  <element name="_timing_weight" rngui:label="&#x3C9; - Weight">
55
63
  <data type="float" rngui:label="[0,1]"/>
@@ -1,6 +1,6 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
2
+ <attribute name="ctime" rngui:label="Cycle time in ms" rngui:default="100">
3
+ <data type="integer" rngui:label="ms"/>
4
4
  </attribute>
5
5
  <element name="_expected" rngui:header="Values Expected to Change">
6
6
  <zeroOrMore rngui:label="Add Value">
@@ -1,8 +1,8 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
2
+ <attribute name="ctime" rngui:label="Cycle time in ms" rngui:default="100">
3
+ <data type="integer" rngui:label="ms"/>
4
4
  </attribute>
5
- <element name="_expected" rngui:header="Values Expected to Change">
5
+ <element name="_expected" rngui:header="Measured Values">
6
6
  <zeroOrMore rngui:label="Add Value">
7
7
  <element name="value" rngui:label="Value">
8
8
  <data type="string" rngui:label="a dataelement"/>
@@ -253,6 +253,18 @@ function WFAdaptorManifestation(adaptor) {
253
253
  new CustomMenu(e).contextmenu(menu);
254
254
  } //}}}
255
255
 
256
+ function positionHandling(svgid) {
257
+ var xml_node = self.adaptor.description.get_node_by_svg_id(svgid);
258
+ var vtarget = self.adaptor.illustrator.get_node_by_svg_id(svgid);
259
+ if (vtarget.length > 0) {
260
+ if (vtarget.parents('g.activities.passive, g.activities.active').length > 0) {
261
+ del_ui_pos(xml_node);
262
+ } else {
263
+ add_ui_pos(xml_node);
264
+ }
265
+ }
266
+ }
267
+
256
268
  // Events
257
269
  this.events.touchend = function(svgid, e) { // {{{
258
270
  clearTimeout(self.presstimer);
@@ -264,15 +276,7 @@ function WFAdaptorManifestation(adaptor) {
264
276
  this.events.mousedown = function(svgid, e, child, sibling) { // {{{
265
277
  if(e.button == 0) { // left-click
266
278
  } else if(e.button == 1) { // middle-click
267
- var xml_node = self.adaptor.description.get_node_by_svg_id(svgid);
268
- var vtarget = self.adaptor.illustrator.get_node_by_svg_id(svgid);
269
- if (vtarget.length > 0) {
270
- if (vtarget.parents('g.activities.passive, g.activities.active').length > 0) {
271
- del_ui_pos(xml_node);
272
- } else {
273
- add_ui_pos(xml_node);
274
- }
275
- }
279
+ positionHandling(svgid);
276
280
  } else if(e.button == 2) { // right-click
277
281
  contextMenuHandling(svgid,e,child,sibling);
278
282
  }
@@ -305,6 +309,8 @@ function WFAdaptorManifestation(adaptor) {
305
309
  localStorage.removeItem('marked_from');
306
310
  }
307
311
  }
312
+ } else if (e && (e.shiftKey)) {
313
+ positionHandling(svgid);
308
314
  } else {
309
315
  self.adaptor.illustrator.get_elements().removeClass('marked');
310
316
  localStorage.removeItem('marked');
@@ -27,6 +27,14 @@
27
27
  </element>
28
28
  </element>
29
29
  <element name="annotations" rngui:header="Annotations">
30
+ <element name="_generic" rngui:header="Generic" rngui:fold="closed">
31
+ <zeroOrMore rngui:label="Create Annotation Pair">
32
+ <element rngui:label="Name" rngui:labeltype="xml">
33
+ <anyName/>
34
+ <data type="string" rngui:label="Value"/>
35
+ </element>
36
+ </zeroOrMore>
37
+ </element>
30
38
  <element name="_timing" rngui:header="Timing" rngui:fold="closed">
31
39
  <element name="_timing_weight" rngui:label="&#x3C9; - Weight">
32
40
  <data type="float" rngui:label="[0,1]"/>
@@ -50,6 +50,14 @@
50
50
  </element>
51
51
  </element>
52
52
  <element name="annotations" rngui:header="Annotations">
53
+ <element name="_generic" rngui:header="Generic" rngui:fold="closed">
54
+ <zeroOrMore rngui:label="Create Annotation Pair">
55
+ <element rngui:label="Name" rngui:labeltype="xml">
56
+ <anyName/>
57
+ <data type="string" rngui:label="Value"/>
58
+ </element>
59
+ </zeroOrMore>
60
+ </element>
53
61
  <element name="_timing" rngui:header="Timing" rngui:fold="closed">
54
62
  <element name="_timing_weight" rngui:label="&#x3C9; - Weight">
55
63
  <data type="float" rngui:label="[0,1]"/>
@@ -1,6 +1,6 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
2
+ <attribute name="ctime" rngui:label="Cycle time in ms" rngui:default="100">
3
+ <data type="integer" rngui:label="ms"/>
4
4
  </attribute>
5
5
  <element name="_expected" rngui:header="Values Expected to Change">
6
6
  <zeroOrMore rngui:label="Add Value">
@@ -1,8 +1,8 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
2
+ <attribute name="ctime" rngui:label="Cycle time in ms" rngui:default="100">
3
+ <data type="integer" rngui:label="ms"/>
4
4
  </attribute>
5
- <element name="_expected" rngui:header="Values Expected to Change">
5
+ <element name="_expected" rngui:header="Measured Values">
6
6
  <zeroOrMore rngui:label="Add Value">
7
7
  <element name="value" rngui:label="Value">
8
8
  <data type="string" rngui:label="a dataelement"/>
@@ -253,6 +253,18 @@ function WFAdaptorManifestation(adaptor) {
253
253
  new CustomMenu(e).contextmenu(menu);
254
254
  } //}}}
255
255
 
256
+ function positionHandling(svgid) {
257
+ var xml_node = self.adaptor.description.get_node_by_svg_id(svgid);
258
+ var vtarget = self.adaptor.illustrator.get_node_by_svg_id(svgid);
259
+ if (vtarget.length > 0) {
260
+ if (vtarget.parents('g.activities.passive, g.activities.active').length > 0) {
261
+ del_ui_pos(xml_node);
262
+ } else {
263
+ add_ui_pos(xml_node);
264
+ }
265
+ }
266
+ }
267
+
256
268
  // Events
257
269
  this.events.touchend = function(svgid, e) { // {{{
258
270
  clearTimeout(self.presstimer);
@@ -264,15 +276,7 @@ function WFAdaptorManifestation(adaptor) {
264
276
  this.events.mousedown = function(svgid, e, child, sibling) { // {{{
265
277
  if(e.button == 0) { // left-click
266
278
  } else if(e.button == 1) { // middle-click
267
- var xml_node = self.adaptor.description.get_node_by_svg_id(svgid);
268
- var vtarget = self.adaptor.illustrator.get_node_by_svg_id(svgid);
269
- if (vtarget.length > 0) {
270
- if (vtarget.parents('g.activities.passive, g.activities.active').length > 0) {
271
- del_ui_pos(xml_node);
272
- } else {
273
- add_ui_pos(xml_node);
274
- }
275
- }
279
+ positionHandling(svgid);
276
280
  } else if(e.button == 2) { // right-click
277
281
  contextMenuHandling(svgid,e,child,sibling);
278
282
  }
@@ -305,6 +309,8 @@ function WFAdaptorManifestation(adaptor) {
305
309
  localStorage.removeItem('marked_from');
306
310
  }
307
311
  }
312
+ } else if (e && (e.shiftKey)) {
313
+ positionHandling(svgid);
308
314
  } else {
309
315
  self.adaptor.illustrator.get_elements().removeClass('marked');
310
316
  localStorage.removeItem('marked');
@@ -1026,7 +1032,7 @@ function WFAdaptorManifestation(adaptor) {
1026
1032
  } else {
1027
1033
  valtext = '';
1028
1034
  }
1029
- var ret = [ { column: 'Label', value: 'measure: f = ' + $(node).attr('frequency') + ' Hz' + valtext } ];
1035
+ var ret = [ { column: 'Label', value: 'measure: t = ' + $(node).attr('ctime') + ' ms' + valtext } ];
1030
1036
  return ret;
1031
1037
  },
1032
1038
  'svg': self.adaptor.theme_dir + 'symbols/closed_loop_measuring.svg'
@@ -1108,7 +1114,7 @@ function WFAdaptorManifestation(adaptor) {
1108
1114
  } else {
1109
1115
  valtext = '';
1110
1116
  }
1111
- var ret = [ { column: 'Label', value: 'control: f = ' + $(node).attr('frequency') + ' Hz' + valtext } ];
1117
+ var ret = [ { column: 'Label', value: 'control: t = ' + $(node).attr('ctime') + ' ms' + valtext } ];
1112
1118
  return ret;
1113
1119
  },
1114
1120
  'svg': self.adaptor.theme_dir + 'symbols/closed_loop_control.svg'
@@ -27,6 +27,14 @@
27
27
  </element>
28
28
  </element>
29
29
  <element name="annotations" rngui:header="Annotations">
30
+ <element name="_generic" rngui:header="Generic" rngui:fold="closed">
31
+ <zeroOrMore rngui:label="Create Annotation Pair">
32
+ <element rngui:label="Name" rngui:labeltype="xml">
33
+ <anyName/>
34
+ <data type="string" rngui:label="Value"/>
35
+ </element>
36
+ </zeroOrMore>
37
+ </element>
30
38
  <element name="_timing" rngui:header="Timing" rngui:fold="closed">
31
39
  <element name="_timing_weight" rngui:label="&#x3C9; - Weight">
32
40
  <data type="float" rngui:label="[0,1]"/>