cpee 2.1.91 → 2.1.92

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 (464) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +7 -0
  3. data/cockpit/css/llm.css +1 -1
  4. data/cockpit/css/resources-label.css +1 -1
  5. data/cockpit/css/ui.css +2 -2
  6. data/cockpit/css/wfadaptor.css +92 -103
  7. data/cockpit/edit.html +2 -2
  8. data/cockpit/index.html +3 -2
  9. data/cockpit/js/details.js +4 -1
  10. data/cockpit/js/instance.js +46 -29
  11. data/cockpit/js/wfadaptor.js +571 -140
  12. data/cockpit/llm.html +2 -2
  13. data/cockpit/llm_alternative.html +2 -2
  14. data/cockpit/model.html +1 -1
  15. data/cockpit/only_llm.html +2 -2
  16. data/cockpit/themes/base.js +219 -122
  17. data/cockpit/themes/control/rngs/call.rng +13 -0
  18. data/cockpit/themes/control/rngs/callmanipulate.rng +17 -1
  19. data/cockpit/themes/control/rngs/choose.rng +4 -1
  20. data/cockpit/themes/control/rngs/manipulate.rng +14 -1
  21. data/cockpit/themes/control/rngs/start.rng +132 -119
  22. data/cockpit/themes/control/rngs/wait_for_signal.rng +8 -0
  23. data/cockpit/themes/control/symbols/alternative.svg +13 -3
  24. data/cockpit/themes/control/symbols/arrow.svg +1 -1
  25. data/cockpit/themes/control/symbols/call.svg +15 -2
  26. data/cockpit/themes/control/symbols/call_sensor.svg +19 -5
  27. data/cockpit/themes/control/symbols/callmanipulate.svg +19 -4
  28. data/cockpit/themes/control/symbols/callmanipulate_sensor.svg +21 -7
  29. data/cockpit/themes/control/symbols/callmanipulate_sensor_signal.svg +32 -0
  30. data/cockpit/themes/control/symbols/callmanipulate_signal.svg +29 -0
  31. data/cockpit/themes/control/symbols/choose.svg +13 -3
  32. data/cockpit/themes/control/symbols/choose_exclusive.svg +13 -3
  33. data/cockpit/themes/{compact/symbols/choose.svg → control/symbols/choose_exclusive_finish.svg} +1 -1
  34. data/cockpit/themes/control/symbols/choose_inclusive.svg +11 -2
  35. data/cockpit/themes/{compact/symbols/choose_inclusive.svg → control/symbols/choose_inclusive_finish.svg} +1 -1
  36. data/cockpit/themes/control/symbols/closed_loop.svg +1 -1
  37. data/cockpit/themes/control/symbols/closed_loop_cancel.svg +2 -2
  38. data/cockpit/themes/control/symbols/closed_loop_control.svg +2 -2
  39. data/cockpit/themes/control/symbols/closed_loop_measuring.svg +2 -2
  40. data/cockpit/themes/control/symbols/complex.svg +1 -1
  41. data/cockpit/themes/control/symbols/critical.svg +1 -1
  42. data/cockpit/themes/control/symbols/end.svg +1 -1
  43. data/cockpit/themes/control/symbols/escape.svg +2 -2
  44. data/cockpit/themes/control/symbols/event_end.svg +1 -1
  45. data/cockpit/themes/control/symbols/loop.svg +13 -3
  46. data/cockpit/themes/control/symbols/loop_end.svg +15 -0
  47. data/cockpit/themes/control/symbols/manipulate.svg +17 -2
  48. data/cockpit/themes/control/symbols/otherwise.svg +3 -3
  49. data/cockpit/themes/control/symbols/parallel.svg +2 -2
  50. data/cockpit/themes/control/symbols/parallel_branch.svg +3 -3
  51. data/cockpit/themes/control/symbols/parallel_branch_event.svg +4 -4
  52. data/cockpit/themes/control/symbols/parallel_branch_normal.svg +3 -3
  53. data/cockpit/themes/control/symbols/parallel_eventbased_exclusive.svg +4 -4
  54. data/cockpit/themes/control/symbols/parallel_eventbased_parallel.svg +3 -3
  55. data/cockpit/themes/control/symbols/scripts.svg +1 -1
  56. data/cockpit/themes/control/symbols/start.svg +1 -1
  57. data/cockpit/themes/control/symbols/start_event.svg +1 -1
  58. data/cockpit/themes/control/symbols/stop.svg +1 -1
  59. data/cockpit/themes/control/symbols/wait_for_signal.svg +21 -0
  60. data/cockpit/themes/control/theme.js +95 -95
  61. data/cockpit/themes/dataflow/rngs/call.rng +13 -0
  62. data/cockpit/themes/dataflow/rngs/callmanipulate.rng +17 -1
  63. data/cockpit/themes/dataflow/rngs/choose.rng +4 -1
  64. data/cockpit/themes/dataflow/rngs/manipulate.rng +14 -1
  65. data/cockpit/themes/dataflow/rngs/start.rng +132 -119
  66. data/cockpit/themes/dataflow/rngs/wait_for_signal.rng +8 -0
  67. data/cockpit/themes/dataflow/symbols/alternative.svg +13 -3
  68. data/cockpit/themes/dataflow/symbols/arrow.svg +1 -1
  69. data/cockpit/themes/dataflow/symbols/call.svg +15 -2
  70. data/cockpit/themes/dataflow/symbols/call_sensor.svg +19 -5
  71. data/cockpit/themes/dataflow/symbols/callmanipulate.svg +19 -4
  72. data/cockpit/themes/dataflow/symbols/callmanipulate_sensor.svg +21 -7
  73. data/cockpit/themes/dataflow/symbols/callmanipulate_sensor_signal.svg +32 -0
  74. data/cockpit/themes/dataflow/symbols/callmanipulate_signal.svg +29 -0
  75. data/cockpit/themes/dataflow/symbols/choose.svg +13 -3
  76. data/cockpit/themes/dataflow/symbols/choose_exclusive.svg +13 -3
  77. data/cockpit/themes/{compact/symbols/choose_exclusive.svg → dataflow/symbols/choose_exclusive_finish.svg} +1 -1
  78. data/cockpit/themes/dataflow/symbols/choose_inclusive.svg +11 -2
  79. data/cockpit/themes/{compact/symbols/parallel.svg → dataflow/symbols/choose_inclusive_finish.svg} +2 -3
  80. data/cockpit/themes/dataflow/symbols/closed_loop.svg +1 -1
  81. data/cockpit/themes/dataflow/symbols/closed_loop_cancel.svg +2 -2
  82. data/cockpit/themes/dataflow/symbols/closed_loop_control.svg +2 -2
  83. data/cockpit/themes/dataflow/symbols/closed_loop_measuring.svg +2 -2
  84. data/cockpit/themes/dataflow/symbols/complex.svg +1 -1
  85. data/cockpit/themes/dataflow/symbols/critical.svg +1 -1
  86. data/cockpit/themes/dataflow/symbols/end.svg +1 -1
  87. data/cockpit/themes/dataflow/symbols/escape.svg +2 -2
  88. data/cockpit/themes/dataflow/symbols/event_end.svg +1 -1
  89. data/cockpit/themes/dataflow/symbols/loop.svg +13 -3
  90. data/cockpit/themes/dataflow/symbols/loop_end.svg +15 -0
  91. data/cockpit/themes/dataflow/symbols/manipulate.svg +17 -2
  92. data/cockpit/themes/dataflow/symbols/otherwise.svg +3 -3
  93. data/cockpit/themes/dataflow/symbols/parallel.svg +2 -2
  94. data/cockpit/themes/dataflow/symbols/parallel_branch.svg +3 -3
  95. data/cockpit/themes/dataflow/symbols/parallel_branch_event.svg +4 -4
  96. data/cockpit/themes/dataflow/symbols/parallel_branch_normal.svg +3 -3
  97. data/cockpit/themes/dataflow/symbols/parallel_eventbased_exclusive.svg +4 -4
  98. data/cockpit/themes/dataflow/symbols/parallel_eventbased_parallel.svg +3 -3
  99. data/cockpit/themes/dataflow/symbols/scripts.svg +1 -1
  100. data/cockpit/themes/dataflow/symbols/start.svg +1 -1
  101. data/cockpit/themes/dataflow/symbols/start_event.svg +1 -1
  102. data/cockpit/themes/dataflow/symbols/stop.svg +1 -1
  103. data/cockpit/themes/dataflow/symbols/wait_for_signal.svg +21 -0
  104. data/cockpit/themes/dataflow/theme.js +5 -2
  105. data/cockpit/themes/default/rngs/call.rng +13 -0
  106. data/cockpit/themes/default/rngs/callmanipulate.rng +17 -1
  107. data/cockpit/themes/default/rngs/choose.rng +4 -1
  108. data/cockpit/themes/default/rngs/manipulate.rng +14 -1
  109. data/cockpit/themes/default/rngs/start.rng +132 -119
  110. data/cockpit/themes/default/rngs/wait_for_signal.rng +8 -0
  111. data/cockpit/themes/default/symbols/alternative.svg +13 -3
  112. data/cockpit/themes/default/symbols/arrow.svg +1 -1
  113. data/cockpit/themes/default/symbols/call.svg +15 -2
  114. data/cockpit/themes/default/symbols/call_sensor.svg +19 -5
  115. data/cockpit/themes/default/symbols/callmanipulate.svg +19 -4
  116. data/cockpit/themes/default/symbols/callmanipulate_sensor.svg +21 -7
  117. data/cockpit/themes/default/symbols/callmanipulate_sensor_signal.svg +32 -0
  118. data/cockpit/themes/default/symbols/callmanipulate_signal.svg +29 -0
  119. data/cockpit/themes/default/symbols/choose.svg +13 -3
  120. data/cockpit/themes/default/symbols/choose_exclusive.svg +13 -3
  121. data/cockpit/themes/{compact/symbols/loop.svg → default/symbols/choose_exclusive_finish.svg} +1 -1
  122. data/cockpit/themes/default/symbols/choose_inclusive.svg +11 -2
  123. data/cockpit/themes/{compact/symbols/parallel_branch_compact.svg → default/symbols/choose_inclusive_finish.svg} +2 -2
  124. data/cockpit/themes/default/symbols/closed_loop.svg +1 -1
  125. data/cockpit/themes/default/symbols/closed_loop_cancel.svg +2 -2
  126. data/cockpit/themes/default/symbols/closed_loop_control.svg +2 -2
  127. data/cockpit/themes/default/symbols/closed_loop_measuring.svg +2 -2
  128. data/cockpit/themes/default/symbols/complex.svg +1 -1
  129. data/cockpit/themes/default/symbols/critical.svg +1 -1
  130. data/cockpit/themes/default/symbols/end.svg +1 -1
  131. data/cockpit/themes/default/symbols/escape.svg +2 -2
  132. data/cockpit/themes/default/symbols/event_end.svg +1 -1
  133. data/cockpit/themes/default/symbols/loop.svg +13 -3
  134. data/cockpit/themes/default/symbols/loop_end.svg +15 -0
  135. data/cockpit/themes/default/symbols/manipulate.svg +17 -2
  136. data/cockpit/themes/default/symbols/otherwise.svg +3 -3
  137. data/cockpit/themes/default/symbols/parallel.svg +2 -2
  138. data/cockpit/themes/default/symbols/parallel_branch.svg +3 -3
  139. data/cockpit/themes/default/symbols/parallel_branch_event.svg +4 -4
  140. data/cockpit/themes/default/symbols/parallel_branch_normal.svg +3 -3
  141. data/cockpit/themes/default/symbols/parallel_eventbased_exclusive.svg +4 -4
  142. data/cockpit/themes/default/symbols/parallel_eventbased_parallel.svg +3 -3
  143. data/cockpit/themes/default/symbols/scripts.svg +1 -1
  144. data/cockpit/themes/default/symbols/start.svg +1 -1
  145. data/cockpit/themes/default/symbols/start_event.svg +1 -1
  146. data/cockpit/themes/default/symbols/stop.svg +1 -1
  147. data/cockpit/themes/default/symbols/wait_for_signal.svg +21 -0
  148. data/cockpit/themes/default/theme.js +7 -1
  149. data/cockpit/themes/extended/rngs/call.rng +13 -0
  150. data/cockpit/themes/extended/rngs/callmanipulate.rng +17 -1
  151. data/cockpit/themes/extended/rngs/choose.rng +4 -1
  152. data/cockpit/themes/extended/rngs/manipulate.rng +14 -1
  153. data/cockpit/themes/extended/rngs/start.rng +132 -119
  154. data/cockpit/themes/extended/rngs/wait_for_signal.rng +8 -0
  155. data/cockpit/themes/extended/symbols/alternative.svg +13 -3
  156. data/cockpit/themes/extended/symbols/arrow.svg +1 -1
  157. data/cockpit/themes/extended/symbols/call.svg +15 -2
  158. data/cockpit/themes/extended/symbols/call_sensor.svg +19 -5
  159. data/cockpit/themes/extended/symbols/callmanipulate.svg +19 -4
  160. data/cockpit/themes/extended/symbols/callmanipulate_sensor.svg +21 -7
  161. data/cockpit/themes/extended/symbols/callmanipulate_sensor_signal.svg +32 -0
  162. data/cockpit/themes/extended/symbols/callmanipulate_signal.svg +29 -0
  163. data/cockpit/themes/extended/symbols/choose.svg +13 -3
  164. data/cockpit/themes/extended/symbols/choose_exclusive.svg +13 -3
  165. data/cockpit/themes/{compact/symbols/complex.svg → extended/symbols/choose_exclusive_finish.svg} +1 -4
  166. data/cockpit/themes/extended/symbols/choose_inclusive.svg +11 -2
  167. data/cockpit/themes/{control/symbols/parallel_branch_compact.svg → extended/symbols/choose_inclusive_finish.svg} +2 -2
  168. data/cockpit/themes/extended/symbols/closed_loop.svg +1 -1
  169. data/cockpit/themes/extended/symbols/closed_loop_cancel.svg +2 -2
  170. data/cockpit/themes/extended/symbols/closed_loop_control.svg +2 -2
  171. data/cockpit/themes/extended/symbols/closed_loop_measuring.svg +2 -2
  172. data/cockpit/themes/extended/symbols/complex.svg +1 -1
  173. data/cockpit/themes/extended/symbols/critical.svg +1 -1
  174. data/cockpit/themes/extended/symbols/end.svg +1 -1
  175. data/cockpit/themes/extended/symbols/escape.svg +2 -2
  176. data/cockpit/themes/extended/symbols/event_end.svg +1 -1
  177. data/cockpit/themes/extended/symbols/loop.svg +13 -3
  178. data/cockpit/themes/extended/symbols/loop_end.svg +15 -0
  179. data/cockpit/themes/extended/symbols/manipulate.svg +17 -2
  180. data/cockpit/themes/extended/symbols/otherwise.svg +3 -3
  181. data/cockpit/themes/extended/symbols/parallel.svg +2 -2
  182. data/cockpit/themes/extended/symbols/parallel_branch.svg +3 -3
  183. data/cockpit/themes/extended/symbols/parallel_branch_event.svg +4 -4
  184. data/cockpit/themes/extended/symbols/parallel_branch_normal.svg +3 -3
  185. data/cockpit/themes/extended/symbols/parallel_eventbased_exclusive.svg +4 -4
  186. data/cockpit/themes/extended/symbols/parallel_eventbased_parallel.svg +3 -3
  187. data/cockpit/themes/extended/symbols/scripts.svg +1 -1
  188. data/cockpit/themes/extended/symbols/start.svg +1 -1
  189. data/cockpit/themes/extended/symbols/start_event.svg +1 -1
  190. data/cockpit/themes/extended/symbols/stop.svg +1 -1
  191. data/cockpit/themes/extended/symbols/wait_for_signal.svg +21 -0
  192. data/cockpit/themes/extended/theme.js +3 -0
  193. data/cockpit/themes/felix/symbols/alternative.svg +13 -3
  194. data/cockpit/themes/felix/symbols/arrow.svg +1 -1
  195. data/cockpit/themes/felix/symbols/call.svg +15 -2
  196. data/cockpit/themes/felix/symbols/call_sensor.svg +19 -5
  197. data/cockpit/themes/felix/symbols/callmanipulate.svg +19 -4
  198. data/cockpit/themes/felix/symbols/callmanipulate_sensor.svg +21 -7
  199. data/cockpit/themes/felix/symbols/callmanipulate_sensor_signal.svg +32 -0
  200. data/cockpit/themes/felix/symbols/callmanipulate_signal.svg +29 -0
  201. data/cockpit/themes/felix/symbols/choose.svg +13 -3
  202. data/cockpit/themes/felix/symbols/choose_exclusive.svg +13 -3
  203. data/cockpit/themes/felix/symbols/choose_exclusive_finish.svg +5 -0
  204. data/cockpit/themes/felix/symbols/choose_inclusive.svg +11 -2
  205. data/cockpit/themes/felix/symbols/choose_inclusive_finish.svg +4 -0
  206. data/cockpit/themes/felix/symbols/closed_loop.svg +1 -1
  207. data/cockpit/themes/felix/symbols/closed_loop_cancel.svg +2 -2
  208. data/cockpit/themes/felix/symbols/closed_loop_control.svg +2 -2
  209. data/cockpit/themes/felix/symbols/closed_loop_measuring.svg +2 -2
  210. data/cockpit/themes/felix/symbols/complex.svg +1 -1
  211. data/cockpit/themes/felix/symbols/critical.svg +1 -1
  212. data/cockpit/themes/felix/symbols/end.svg +1 -1
  213. data/cockpit/themes/felix/symbols/escape.svg +2 -2
  214. data/cockpit/themes/felix/symbols/event_end.svg +1 -1
  215. data/cockpit/themes/felix/symbols/loop.svg +13 -3
  216. data/cockpit/themes/felix/symbols/loop_end.svg +15 -0
  217. data/cockpit/themes/felix/symbols/manipulate.svg +17 -2
  218. data/cockpit/themes/felix/symbols/otherwise.svg +3 -3
  219. data/cockpit/themes/felix/symbols/parallel.svg +2 -2
  220. data/cockpit/themes/felix/symbols/parallel_branch.svg +3 -3
  221. data/cockpit/themes/felix/symbols/parallel_branch_event.svg +4 -4
  222. data/cockpit/themes/felix/symbols/parallel_branch_normal.svg +3 -3
  223. data/cockpit/themes/felix/symbols/parallel_eventbased_exclusive.svg +4 -4
  224. data/cockpit/themes/felix/symbols/parallel_eventbased_parallel.svg +3 -3
  225. data/cockpit/themes/felix/symbols/scripts.svg +1 -1
  226. data/cockpit/themes/felix/symbols/start.svg +1 -1
  227. data/cockpit/themes/felix/symbols/start_event.svg +1 -1
  228. data/cockpit/themes/felix/symbols/stop.svg +1 -1
  229. data/cockpit/themes/felix/symbols/wait_for_signal.svg +21 -0
  230. data/cockpit/themes/model/symbols/alternative.svg +13 -3
  231. data/cockpit/themes/model/symbols/arrow.svg +1 -1
  232. data/cockpit/themes/model/symbols/call.svg +15 -2
  233. data/cockpit/themes/model/symbols/call_sensor.svg +19 -5
  234. data/cockpit/themes/model/symbols/callmanipulate.svg +19 -4
  235. data/cockpit/themes/model/symbols/callmanipulate_sensor.svg +21 -7
  236. data/cockpit/themes/model/symbols/callmanipulate_sensor_signal.svg +32 -0
  237. data/cockpit/themes/model/symbols/callmanipulate_signal.svg +29 -0
  238. data/cockpit/themes/model/symbols/choose.svg +13 -3
  239. data/cockpit/themes/model/symbols/choose_exclusive.svg +13 -3
  240. data/cockpit/themes/model/symbols/choose_exclusive_finish.svg +5 -0
  241. data/cockpit/themes/model/symbols/choose_inclusive.svg +11 -2
  242. data/cockpit/themes/model/symbols/choose_inclusive_finish.svg +4 -0
  243. data/cockpit/themes/model/symbols/closed_loop.svg +1 -1
  244. data/cockpit/themes/model/symbols/closed_loop_cancel.svg +2 -2
  245. data/cockpit/themes/model/symbols/closed_loop_control.svg +2 -2
  246. data/cockpit/themes/model/symbols/closed_loop_measuring.svg +2 -2
  247. data/cockpit/themes/model/symbols/complex.svg +1 -1
  248. data/cockpit/themes/model/symbols/critical.svg +1 -1
  249. data/cockpit/themes/model/symbols/end.svg +1 -1
  250. data/cockpit/themes/model/symbols/escape.svg +2 -2
  251. data/cockpit/themes/model/symbols/event_end.svg +1 -1
  252. data/cockpit/themes/model/symbols/loop.svg +13 -3
  253. data/cockpit/themes/model/symbols/loop_end.svg +15 -0
  254. data/cockpit/themes/model/symbols/manipulate.svg +17 -2
  255. data/cockpit/themes/model/symbols/otherwise.svg +3 -3
  256. data/cockpit/themes/model/symbols/parallel.svg +2 -2
  257. data/cockpit/themes/model/symbols/parallel_branch.svg +3 -3
  258. data/cockpit/themes/model/symbols/parallel_branch_event.svg +4 -4
  259. data/cockpit/themes/model/symbols/parallel_branch_normal.svg +3 -3
  260. data/cockpit/themes/model/symbols/parallel_eventbased_exclusive.svg +4 -4
  261. data/cockpit/themes/model/symbols/parallel_eventbased_parallel.svg +3 -3
  262. data/cockpit/themes/model/symbols/scripts.svg +1 -1
  263. data/cockpit/themes/model/symbols/start.svg +1 -1
  264. data/cockpit/themes/model/symbols/start_event.svg +1 -1
  265. data/cockpit/themes/model/symbols/stop.svg +1 -1
  266. data/cockpit/themes/model/symbols/wait_for_signal.svg +21 -0
  267. data/cockpit/themes/model/theme.js +68 -68
  268. data/cockpit/themes/packed/rngs/call.rng +13 -0
  269. data/cockpit/themes/packed/rngs/callmanipulate.rng +17 -1
  270. data/cockpit/themes/packed/rngs/choose.rng +4 -1
  271. data/cockpit/themes/packed/rngs/manipulate.rng +14 -1
  272. data/cockpit/themes/packed/rngs/start.rng +132 -119
  273. data/cockpit/themes/packed/rngs/wait_for_signal.rng +8 -0
  274. data/cockpit/themes/packed/symbols/alternative.svg +13 -3
  275. data/cockpit/themes/packed/symbols/arrow.svg +1 -1
  276. data/cockpit/themes/packed/symbols/call.svg +15 -2
  277. data/cockpit/themes/packed/symbols/call_sensor.svg +19 -5
  278. data/cockpit/themes/packed/symbols/callmanipulate.svg +19 -4
  279. data/cockpit/themes/packed/symbols/callmanipulate_sensor.svg +21 -7
  280. data/cockpit/themes/packed/symbols/callmanipulate_sensor_signal.svg +32 -0
  281. data/cockpit/themes/packed/symbols/callmanipulate_signal.svg +29 -0
  282. data/cockpit/themes/packed/symbols/choose.svg +13 -3
  283. data/cockpit/themes/packed/symbols/choose_exclusive.svg +13 -3
  284. data/cockpit/themes/packed/symbols/choose_exclusive_finish.svg +5 -0
  285. data/cockpit/themes/packed/symbols/choose_inclusive.svg +11 -2
  286. data/cockpit/themes/packed/symbols/choose_inclusive_finish.svg +4 -0
  287. data/cockpit/themes/packed/symbols/closed_loop.svg +1 -1
  288. data/cockpit/themes/packed/symbols/closed_loop_cancel.svg +2 -2
  289. data/cockpit/themes/packed/symbols/closed_loop_control.svg +2 -2
  290. data/cockpit/themes/packed/symbols/closed_loop_measuring.svg +2 -2
  291. data/cockpit/themes/packed/symbols/complex.svg +1 -1
  292. data/cockpit/themes/packed/symbols/critical.svg +1 -1
  293. data/cockpit/themes/packed/symbols/end.svg +1 -1
  294. data/cockpit/themes/packed/symbols/escape.svg +2 -2
  295. data/cockpit/themes/packed/symbols/event_end.svg +1 -1
  296. data/cockpit/themes/packed/symbols/loop.svg +13 -3
  297. data/cockpit/themes/packed/symbols/loop_end.svg +15 -0
  298. data/cockpit/themes/packed/symbols/manipulate.svg +17 -2
  299. data/cockpit/themes/packed/symbols/otherwise.svg +3 -3
  300. data/cockpit/themes/packed/symbols/parallel.svg +2 -2
  301. data/cockpit/themes/packed/symbols/parallel_branch.svg +3 -3
  302. data/cockpit/themes/packed/symbols/parallel_branch_event.svg +4 -4
  303. data/cockpit/themes/packed/symbols/parallel_branch_normal.svg +3 -3
  304. data/cockpit/themes/packed/symbols/parallel_eventbased_exclusive.svg +4 -4
  305. data/cockpit/themes/packed/symbols/parallel_eventbased_parallel.svg +3 -3
  306. data/cockpit/themes/packed/symbols/scripts.svg +1 -1
  307. data/cockpit/themes/packed/symbols/start.svg +1 -1
  308. data/cockpit/themes/packed/symbols/start_event.svg +1 -1
  309. data/cockpit/themes/packed/symbols/stop.svg +1 -1
  310. data/cockpit/themes/packed/symbols/wait_for_signal.svg +21 -0
  311. data/cockpit/themes/packed/theme.js +11 -7
  312. data/cockpit/themes/preset/rngs/call.rng +13 -0
  313. data/cockpit/themes/preset/rngs/callmanipulate.rng +17 -1
  314. data/cockpit/themes/preset/rngs/choose.rng +4 -1
  315. data/cockpit/themes/preset/rngs/manipulate.rng +14 -1
  316. data/cockpit/themes/preset/rngs/start.rng +132 -119
  317. data/cockpit/themes/preset/rngs/wait_for_signal.rng +8 -0
  318. data/cockpit/themes/preset/symbols/alternative.svg +13 -3
  319. data/cockpit/themes/preset/symbols/arrow.svg +1 -1
  320. data/cockpit/themes/preset/symbols/call.svg +15 -2
  321. data/cockpit/themes/preset/symbols/call_sensor.svg +19 -5
  322. data/cockpit/themes/preset/symbols/callmanipulate.svg +19 -4
  323. data/cockpit/themes/preset/symbols/callmanipulate_sensor.svg +21 -7
  324. data/cockpit/themes/preset/symbols/callmanipulate_sensor_signal.svg +32 -0
  325. data/cockpit/themes/preset/symbols/callmanipulate_signal.svg +29 -0
  326. data/cockpit/themes/preset/symbols/choose.svg +13 -3
  327. data/cockpit/themes/preset/symbols/choose_exclusive.svg +13 -3
  328. data/cockpit/themes/preset/symbols/choose_exclusive_finish.svg +5 -0
  329. data/cockpit/themes/preset/symbols/choose_inclusive.svg +11 -2
  330. data/cockpit/themes/preset/symbols/choose_inclusive_finish.svg +4 -0
  331. data/cockpit/themes/preset/symbols/closed_loop.svg +1 -1
  332. data/cockpit/themes/preset/symbols/closed_loop_cancel.svg +2 -2
  333. data/cockpit/themes/preset/symbols/closed_loop_control.svg +2 -2
  334. data/cockpit/themes/preset/symbols/closed_loop_measuring.svg +2 -2
  335. data/cockpit/themes/preset/symbols/complex.svg +1 -1
  336. data/cockpit/themes/preset/symbols/critical.svg +1 -1
  337. data/cockpit/themes/preset/symbols/end.svg +1 -1
  338. data/cockpit/themes/preset/symbols/escape.svg +2 -2
  339. data/cockpit/themes/preset/symbols/event_end.svg +1 -1
  340. data/cockpit/themes/preset/symbols/loop.svg +13 -3
  341. data/cockpit/themes/preset/symbols/loop_end.svg +15 -0
  342. data/cockpit/themes/preset/symbols/manipulate.svg +17 -2
  343. data/cockpit/themes/preset/symbols/otherwise.svg +3 -3
  344. data/cockpit/themes/preset/symbols/parallel.svg +2 -2
  345. data/cockpit/themes/preset/symbols/parallel_branch.svg +3 -3
  346. data/cockpit/themes/preset/symbols/parallel_branch_event.svg +4 -4
  347. data/cockpit/themes/preset/symbols/parallel_branch_normal.svg +3 -3
  348. data/cockpit/themes/preset/symbols/parallel_eventbased_exclusive.svg +4 -4
  349. data/cockpit/themes/preset/symbols/parallel_eventbased_parallel.svg +3 -3
  350. data/cockpit/themes/preset/symbols/scripts.svg +1 -1
  351. data/cockpit/themes/preset/symbols/start.svg +1 -1
  352. data/cockpit/themes/preset/symbols/start_event.svg +1 -1
  353. data/cockpit/themes/preset/symbols/stop.svg +1 -1
  354. data/cockpit/themes/preset/symbols/wait_for_signal.svg +21 -0
  355. data/cockpit/themes/preset/theme.js +7 -1
  356. data/cockpit/themes/reduced/rngs/call.rng +13 -0
  357. data/cockpit/themes/reduced/rngs/callmanipulate.rng +17 -1
  358. data/cockpit/themes/reduced/rngs/choose.rng +4 -1
  359. data/cockpit/themes/reduced/rngs/manipulate.rng +14 -1
  360. data/cockpit/themes/reduced/rngs/start.rng +132 -119
  361. data/cockpit/themes/reduced/rngs/wait_for_signal.rng +8 -0
  362. data/cockpit/themes/reduced/symbols/alternative.svg +13 -3
  363. data/cockpit/themes/reduced/symbols/arrow.svg +1 -1
  364. data/cockpit/themes/reduced/symbols/call.svg +15 -2
  365. data/cockpit/themes/reduced/symbols/call_sensor.svg +19 -5
  366. data/cockpit/themes/reduced/symbols/callmanipulate.svg +19 -4
  367. data/cockpit/themes/reduced/symbols/callmanipulate_sensor.svg +21 -7
  368. data/cockpit/themes/reduced/symbols/callmanipulate_sensor_signal.svg +32 -0
  369. data/cockpit/themes/reduced/symbols/callmanipulate_signal.svg +29 -0
  370. data/cockpit/themes/reduced/symbols/choose.svg +13 -3
  371. data/cockpit/themes/reduced/symbols/choose_exclusive.svg +13 -3
  372. data/cockpit/themes/reduced/symbols/choose_exclusive_finish.svg +5 -0
  373. data/cockpit/themes/reduced/symbols/choose_inclusive.svg +11 -2
  374. data/cockpit/themes/reduced/symbols/choose_inclusive_finish.svg +4 -0
  375. data/cockpit/themes/reduced/symbols/closed_loop.svg +1 -1
  376. data/cockpit/themes/reduced/symbols/closed_loop_cancel.svg +2 -2
  377. data/cockpit/themes/reduced/symbols/closed_loop_control.svg +2 -2
  378. data/cockpit/themes/reduced/symbols/closed_loop_measuring.svg +2 -2
  379. data/cockpit/themes/reduced/symbols/complex.svg +1 -1
  380. data/cockpit/themes/reduced/symbols/critical.svg +1 -1
  381. data/cockpit/themes/reduced/symbols/end.svg +1 -1
  382. data/cockpit/themes/reduced/symbols/escape.svg +2 -2
  383. data/cockpit/themes/reduced/symbols/event_end.svg +1 -1
  384. data/cockpit/themes/reduced/symbols/loop.svg +13 -3
  385. data/cockpit/themes/reduced/symbols/loop_end.svg +15 -0
  386. data/cockpit/themes/reduced/symbols/manipulate.svg +17 -2
  387. data/cockpit/themes/reduced/symbols/otherwise.svg +3 -3
  388. data/cockpit/themes/reduced/symbols/parallel.svg +2 -2
  389. data/cockpit/themes/reduced/symbols/parallel_branch.svg +3 -3
  390. data/cockpit/themes/reduced/symbols/parallel_branch_event.svg +4 -4
  391. data/cockpit/themes/reduced/symbols/parallel_branch_normal.svg +3 -3
  392. data/cockpit/themes/reduced/symbols/parallel_eventbased_exclusive.svg +4 -4
  393. data/cockpit/themes/reduced/symbols/parallel_eventbased_parallel.svg +3 -3
  394. data/cockpit/themes/reduced/symbols/scripts.svg +1 -1
  395. data/cockpit/themes/reduced/symbols/start.svg +1 -1
  396. data/cockpit/themes/reduced/symbols/start_event.svg +1 -1
  397. data/cockpit/themes/reduced/symbols/stop.svg +1 -1
  398. data/cockpit/themes/reduced/symbols/wait_for_signal.svg +21 -0
  399. data/contrib/logo2a-favicon.png +0 -0
  400. data/contrib/logo2a-favicon.svg +423 -0
  401. data/cpee.gemspec +1 -1
  402. data/server/executionhandlers/ruby/connection.rb +4 -0
  403. data/server/executionhandlers/ruby/dsl_to_dslx.xsl +18 -1
  404. data/server/routing/end.pid +1 -1
  405. data/server/routing/forward-events-00.pid +1 -1
  406. data/server/routing/forward-votes.pid +1 -1
  407. data/server/routing/persist.pid +1 -1
  408. metadata +65 -66
  409. data/cockpit/themes/compact/rngs/alternative.rng +0 -25
  410. data/cockpit/themes/compact/rngs/call.rng +0 -229
  411. data/cockpit/themes/compact/rngs/callmanipulate.rng +0 -258
  412. data/cockpit/themes/compact/rngs/choose.rng +0 -14
  413. data/cockpit/themes/compact/rngs/closed_loop.rng +0 -62
  414. data/cockpit/themes/compact/rngs/closed_loop_cancel.rng +0 -5
  415. data/cockpit/themes/compact/rngs/closed_loop_control.rng +0 -31
  416. data/cockpit/themes/compact/rngs/closed_loop_measuring.rng +0 -12
  417. data/cockpit/themes/compact/rngs/critical.rng +0 -5
  418. data/cockpit/themes/compact/rngs/escape.rng +0 -1
  419. data/cockpit/themes/compact/rngs/group.rng +0 -3
  420. data/cockpit/themes/compact/rngs/loop.rng +0 -22
  421. data/cockpit/themes/compact/rngs/manipulate.rng +0 -9
  422. data/cockpit/themes/compact/rngs/otherwise.rng +0 -22
  423. data/cockpit/themes/compact/rngs/parallel.rng +0 -27
  424. data/cockpit/themes/compact/rngs/parallel_branch.rng +0 -2
  425. data/cockpit/themes/compact/rngs/scripts.rng +0 -23
  426. data/cockpit/themes/compact/rngs/start.rng +0 -131
  427. data/cockpit/themes/compact/rngs/stop.rng +0 -5
  428. data/cockpit/themes/compact/rngs/terminate.rng +0 -1
  429. data/cockpit/themes/compact/symbols/alternative.svg +0 -5
  430. data/cockpit/themes/compact/symbols/arrow.svg +0 -3
  431. data/cockpit/themes/compact/symbols/call.svg +0 -6
  432. data/cockpit/themes/compact/symbols/call_sensor.svg +0 -9
  433. data/cockpit/themes/compact/symbols/callmanipulate.svg +0 -8
  434. data/cockpit/themes/compact/symbols/callmanipulate_sensor.svg +0 -11
  435. data/cockpit/themes/compact/symbols/closed_loop.svg +0 -5
  436. data/cockpit/themes/compact/symbols/closed_loop_cancel.svg +0 -5
  437. data/cockpit/themes/compact/symbols/closed_loop_control.svg +0 -5
  438. data/cockpit/themes/compact/symbols/closed_loop_measuring.svg +0 -6
  439. data/cockpit/themes/compact/symbols/critical.svg +0 -4
  440. data/cockpit/themes/compact/symbols/delete.svg +0 -4
  441. data/cockpit/themes/compact/symbols/end.svg +0 -3
  442. data/cockpit/themes/compact/symbols/escape.svg +0 -5
  443. data/cockpit/themes/compact/symbols/event_end.svg +0 -3
  444. data/cockpit/themes/compact/symbols/manipulate.svg +0 -4
  445. data/cockpit/themes/compact/symbols/otherwise.svg +0 -5
  446. data/cockpit/themes/compact/symbols/parallel_branch.svg +0 -5
  447. data/cockpit/themes/compact/symbols/parallel_branch_event.svg +0 -14
  448. data/cockpit/themes/compact/symbols/parallel_branch_normal.svg +0 -5
  449. data/cockpit/themes/compact/symbols/parallel_eventbased_exclusive.svg +0 -9
  450. data/cockpit/themes/compact/symbols/parallel_eventbased_parallel.svg +0 -8
  451. data/cockpit/themes/compact/symbols/scripts.svg +0 -4
  452. data/cockpit/themes/compact/symbols/start.svg +0 -3
  453. data/cockpit/themes/compact/symbols/start_event.svg +0 -5
  454. data/cockpit/themes/compact/symbols/stop.svg +0 -5
  455. data/cockpit/themes/compact/symbols/terminate.svg +0 -4
  456. data/cockpit/themes/compact/theme.js +0 -13
  457. data/cockpit/themes/dataflow/symbols/parallel_branch_compact.svg +0 -4
  458. data/cockpit/themes/default/symbols/parallel_branch_compact.svg +0 -4
  459. data/cockpit/themes/extended/symbols/parallel_branch_compact.svg +0 -4
  460. data/cockpit/themes/felix/symbols/parallel_branch_compact.svg +0 -4
  461. data/cockpit/themes/model/symbols/parallel_branch_compact.svg +0 -4
  462. data/cockpit/themes/packed/symbols/parallel_branch_compact.svg +0 -4
  463. data/cockpit/themes/preset/symbols/parallel_branch_compact.svg +0 -4
  464. data/cockpit/themes/reduced/symbols/parallel_branch_compact.svg +0 -4
@@ -115,8 +115,8 @@ function WFAdaptorManifestationBase(adaptor) {
115
115
  });
116
116
  }
117
117
  nodes.reverse();
118
- var iconm = self.resources['arrow'].clone();
119
- var iconc = self.resources['arrow'].clone();
118
+ var iconm = contextMenuHandling_clean_icon(self.resources['arrow']);
119
+ var iconc = contextMenuHandling_clean_icon(self.resources['arrow']);
120
120
  iconm.children('.rfill').addClass('menu');
121
121
  if (myid == localStorage.getItem('marked_from')) {
122
122
  menu.push(
@@ -141,6 +141,13 @@ function WFAdaptorManifestationBase(adaptor) {
141
141
  }
142
142
  } //}}}
143
143
 
144
+ function contextMenuHandling_clean_icon(icon) { //{{{
145
+ icon = icon.clone();
146
+ $('.part-start',icon).remove();
147
+ $('.part-middle',icon).remove();
148
+ $('.part-end',icon).remove();
149
+ return icon;
150
+ } //}}}
144
151
  function contextMenuHandling(svgid,e,child,sibling) { //{{{
145
152
  if (save['state'] != "ready" && save['state'] != "stopped") { return false; }
146
153
 
@@ -178,7 +185,7 @@ function WFAdaptorManifestationBase(adaptor) {
178
185
  }
179
186
 
180
187
  if(xml_node.get(0).tagName != 'description' && !self.elements[xml_node.get(0).tagName].neverdelete) {
181
- var icon = self.elements[xml_node.get(0).tagName].illustrator.svg.clone();
188
+ var icon = contextMenuHandling_clean_icon(self.elements[xml_node.get(0).tagName].illustrator.svg);
182
189
  icon.find('.rfill').addClass('menu');
183
190
  icon.find('.hfill').addClass('menu');
184
191
  menu['Delete'] = [{
@@ -196,7 +203,7 @@ function WFAdaptorManifestationBase(adaptor) {
196
203
  var nodes = localStorage.getItem('marked');
197
204
  nodes = JSON.parse(nodes);
198
205
  if (nodes && nodes.length > 0) {
199
- var icond = self.resources['delete'].clone();
206
+ var icond = contextMenuHandling_clean_icon(self.resources['delete']);
200
207
  icond.children('.standfat').addClass('menu');
201
208
  menu['Delete'].push({
202
209
  'label': 'Remove Marked Elements',
@@ -228,7 +235,7 @@ function WFAdaptorManifestationBase(adaptor) {
228
235
  }
229
236
  }
230
237
  if($('> code', xml_node).length > 0 && xml_node.get(0).tagName == 'call') {
231
- var icon = self.elements.callmanipulate.illustrator.svg.clone();
238
+ var icon = contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg);
232
239
  icon.children('.rfill:last').addClass('menu');
233
240
  menu['Delete'].push({
234
241
  'label': 'Remove Scripts',
@@ -239,7 +246,7 @@ function WFAdaptorManifestationBase(adaptor) {
239
246
  });
240
247
  }
241
248
  if (xml_node.get(0).tagName == "call" || xml_node.get(0).tagName == "manipulate" || xml_node.get(0).tagName == "stop") {
242
- var icon = self.elements.call.illustrator.svg.clone();
249
+ var icon = contextMenuHandling_clean_icon(self.elements.call.illustrator.svg);
243
250
  icon.children('g.replace').addClass('passive');
244
251
  var vtarget = self.adaptor.illustrator.get_node_by_svg_id(svgid);
245
252
  if (vtarget.length > 0) {
@@ -336,6 +343,7 @@ function WFAdaptorManifestationBase(adaptor) {
336
343
 
337
344
  self.update_details(svgid);
338
345
  }
346
+ if (e) { e.stopImmediatePropagation(); }
339
347
  } // }}}
340
348
  this.events.dblclick = function(svgid, e) { // {{{
341
349
  } // }}}
@@ -374,17 +382,35 @@ function WFAdaptorManifestationBase(adaptor) {
374
382
  var ret = [ { column: 'Label', value: $('> label',$(node).children('parameters')).text().replace(/^['"]/,'').replace(/['"]$/,'') } ];
375
383
  return ret;
376
384
  },
377
- 'info': function(node){ return { 'element-endpoint': $(node).attr('endpoint') }; },
385
+ 'style': function(node){
386
+ let sty = {};
387
+ let col = $('> parameters > color', node);
388
+ if (col.length > 0 && col.text() != '') {
389
+ sty['fill'] = col.text();
390
+ }
391
+ return sty;
392
+ },
393
+ 'info': function(node){
394
+ return { 'element-endpoint': $(node).attr('endpoint') };
395
+ },
378
396
  'resolve_symbol': function(node) {
379
397
  if ($('> annotations > _context_data_analysis > probes > probe', node).length > 0) {
380
398
  if ($('> code', node).length > 0) {
381
- return 'callmanipulate_sensor';
399
+ if ($('> code > signal', node).length > 0 && $('> code > signal', node).text() == 'on') {
400
+ return 'callmanipulate_sensor_signal';
401
+ } else {
402
+ return 'callmanipulate_sensor';
403
+ }
382
404
  } else {
383
405
  return 'call_sensor';
384
406
  }
385
407
  } else {
386
408
  if ($('> code', node).length > 0) {
387
- return 'callmanipulate';
409
+ if ($('> code > signal', node).length > 0 && $('> code > signal', node).text() == 'on') {
410
+ return 'callmanipulate_signal';
411
+ } else {
412
+ return 'callmanipulate';
413
+ }
388
414
  } else {
389
415
  return 'call';
390
416
  }
@@ -398,7 +424,7 @@ function WFAdaptorManifestationBase(adaptor) {
398
424
  return [
399
425
  {'label': 'Scripts',
400
426
  'function_call': self.adaptor.description.insert_last_into,
401
- 'menu_icon': self.elements.callmanipulate.illustrator.svg.clone(),
427
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg),
402
428
  'type': undefined,
403
429
  'params': [self.adaptor.description.elements.scripts, node]}
404
430
  ];
@@ -418,6 +444,14 @@ function WFAdaptorManifestationBase(adaptor) {
418
444
  'type': 'primitive',
419
445
  'illustrator': {//{{{
420
446
  'endnodes': 'this',
447
+ 'style': function(node) {
448
+ let sty = {};
449
+ let col = $(node).attr('color');
450
+ if (col && col != '') {
451
+ sty['fill'] = col;
452
+ }
453
+ return sty;
454
+ },
421
455
  'label': function(node){
422
456
  var lab = $(node).attr('label');
423
457
  if (lab) {
@@ -479,6 +513,29 @@ function WFAdaptorManifestationBase(adaptor) {
479
513
  'mouseout': self.events.mouseout
480
514
  }//}}}
481
515
  }; /*}}}*/
516
+ this.elements.wait_for_signal = { /*{{{*/
517
+ 'type': 'primitive',
518
+ 'illustrator': {//{{{
519
+ 'label': function(node){
520
+ var ret = [ { column: 'Label', value: $('> label',$(node)).text().replace(/^['"]/,'').replace(/['"]$/,'') } ];
521
+ return ret;
522
+ },
523
+ 'endnodes': 'this',
524
+ 'svg': self.adaptor.theme_dir + 'symbols/wait_for_signal.svg'
525
+ },//}}}
526
+ 'description': self.adaptor.theme_dir + 'rngs/wait_for_signal.rng',
527
+ 'permissible_children': function(node,mode) { //{{{
528
+ return [];
529
+ }, //}}}
530
+ 'adaptor': {//{{{
531
+ 'mousedown': function (node,e) { self.events.mousedown(node,e,false,true); },
532
+ 'touchstart': function (node,e) { self.events.touchstart(node,e,false,true); },
533
+ 'touchend': self.events.touchend,
534
+ 'click': self.events.click,
535
+ 'mouseover': self.events.mouseover,
536
+ 'mouseout': self.events.mouseout
537
+ }//}}}
538
+ }; /*}}}*/
482
539
  this.elements.terminate = { /*{{{*/
483
540
  'type': 'primitive',
484
541
  'illustrator': {//{{{
@@ -512,6 +569,7 @@ function WFAdaptorManifestationBase(adaptor) {
512
569
  'type': 'primitive',
513
570
  'illustrator': {//{{{
514
571
  'endnodes': 'this',
572
+ 'wide': true,
515
573
  'svg': self.adaptor.theme_dir + 'symbols/event_end.svg'
516
574
  }, //}}}
517
575
  'adaptor': {//{{{
@@ -554,7 +612,7 @@ function WFAdaptorManifestationBase(adaptor) {
554
612
  var ret = [ { column: 'Label', value: $(node).attr('condition') } ];
555
613
  return ret;
556
614
  },
557
- 'svg': self.adaptor.theme_dir + 'symbols/choose_exclusive.svg',
615
+ 'svg': self.adaptor.theme_dir + 'symbols/loop_end.svg',
558
616
  }, //}}}
559
617
  'adaptor': {//{{{
560
618
  'mousedown': function (node,e) { self.events.mousedown(node,e,true,true); },
@@ -600,7 +658,7 @@ function WFAdaptorManifestationBase(adaptor) {
600
658
  this.elements.choose = { /*{{{*/
601
659
  'type': 'complex',
602
660
  'illustrator': {//{{{
603
- 'label': function(node){ return [ { column: 'Label', value: $(node).attr('mode') == 'exclusive' ? 'exclusive' : 'inclusive' } ]; },
661
+ 'label': function(node){ return [ { column: 'Label', value: $(node).attr('label') } ]; },
604
662
  'endnodes': 'aggregate',
605
663
  'closeblock': false,
606
664
  'closing_symbol': 'choose_finish',
@@ -627,25 +685,25 @@ function WFAdaptorManifestationBase(adaptor) {
627
685
  if(node.children('parallel_branch').length > 0) {
628
686
  return [{'label': 'Parallel Branch',
629
687
  'function_call': func,
630
- 'menu_icon': self.elements.parallel_branch.illustrator.svg.clone(),
688
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel_branch.illustrator.svg),
631
689
  'type': 'parallel_branch',
632
690
  'params': [self.adaptor.description.elements.parallel_branch, node]}];
633
691
  }
634
692
  var childs = [{'label': 'Alternative',
635
693
  'function_call': func,
636
- 'menu_icon': self.elements.alternative.illustrator.svg.clone(),
694
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.alternative.illustrator.svg),
637
695
  'type': 'alternative',
638
696
  'params': [self.adaptor.description.elements.alternative, node]}];
639
697
  if((node.children('otherwise').length == 0) && node.parents('parallel').length == node.parents('parallel_branch').length && node.parent('choose').length == 0)
640
698
  childs.push({'label': 'Otherwise',
641
699
  'function_call': self.adaptor.description.insert_last_into,
642
- 'menu_icon': self.elements.otherwise.illustrator.svg.clone(),
700
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.otherwise.illustrator.svg),
643
701
  'type': 'otherwise',
644
702
  'params': [self.adaptor.description.elements.otherwise, node]});
645
703
  if(node.parents('parallel').length > node.parents('parallel_branch').length)
646
704
  childs.push({'label': 'Parallel Branch',
647
705
  'function_call': func,
648
- 'menu_icon': self.elements.parallel_branch.illustrator.svg.clone(),
706
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel_branch.illustrator.svg),
649
707
  'type': 'parallel_branch',
650
708
  'params': [self.adaptor.description.elements.parallel_branch, node]});
651
709
  return childs;
@@ -684,53 +742,58 @@ function WFAdaptorManifestationBase(adaptor) {
684
742
  var childs = [
685
743
  {'label': 'Service Call with Scripts',
686
744
  'function_call': func,
687
- 'menu_icon': self.elements.callmanipulate.illustrator.svg.clone(),
745
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg),
688
746
  'type': 'callmanipulate',
689
747
  'params': [self.adaptor.description.elements.callmanipulate, node]},
690
748
  {'label': 'Service Call',
691
749
  'function_call': func,
692
- 'menu_icon': self.elements.call.illustrator.svg.clone(),
750
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.call.illustrator.svg),
693
751
  'type': 'call',
694
752
  'params': [self.adaptor.description.elements.call, node]},
695
753
  {'label': 'Script',
696
754
  'function_call': func,
697
- 'menu_icon': self.elements.manipulate.illustrator.svg.clone(),
755
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.manipulate.illustrator.svg),
698
756
  'type': 'manipulate',
699
757
  'params': [self.adaptor.description.elements.manipulate, node]},
700
758
  {'label': 'Parallel',
701
759
  'function_call': func,
702
- 'menu_icon': self.elements.parallel.illustrator.svg.clone(),
760
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel.illustrator.svg),
703
761
  'type': 'parallel',
704
762
  'params': [self.adaptor.description.elements.parallel, node]},
705
763
  {'label': 'Decision',
706
764
  'function_call': func,
707
- 'menu_icon': self.elements.choose.illustrator.svg.clone(),
765
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.choose.illustrator.svg),
708
766
  'type': 'choose',
709
767
  'params': [self.adaptor.description.elements.choose, node]},
710
768
  {'label': 'Loop',
711
769
  'function_call': func,
712
- 'menu_icon': self.elements.loop.illustrator.svg.clone(),
770
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.loop.illustrator.svg),
713
771
  'type': 'loop',
714
772
  'params': [self.adaptor.description.elements.loop, node]},
715
773
  {'label': 'Terminate',
716
774
  'function_call': func,
717
- 'menu_icon': self.elements.terminate.illustrator.svg.clone(),
775
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.terminate.illustrator.svg),
718
776
  'type': 'terminate',
719
777
  'params': [self.adaptor.description.elements.terminate, node]},
720
778
  {'label': 'Stop',
721
779
  'function_call': func,
722
- 'menu_icon': self.elements.stop.illustrator.svg.clone(),
780
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.stop.illustrator.svg),
723
781
  'type': 'stop',
724
782
  'params': [self.adaptor.description.elements.stop, node]}
725
783
  ];
726
- if(node.parent('parallel_branch').length > 0) {
727
- childs.push({
728
- 'label': 'Critical',
784
+ if(node.parents('parallel_branch').length > 0) {
785
+ childs.push(
786
+ {'label': 'Critical',
729
787
  'function_call': func,
730
- 'menu_icon': self.elements.critical.illustrator.svg.clone(),
788
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.critical.illustrator.svg),
731
789
  'type': 'critical',
732
- 'params': [self.adaptor.description.elements.critical, node]
733
- });
790
+ 'params': [self.adaptor.description.elements.critical, node]},
791
+ {'label': 'Wait for Signal',
792
+ 'function_call': func,
793
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.wait_for_signal.illustrator.svg),
794
+ 'type': 'wait_for_signal',
795
+ 'params': [self.adaptor.description.elements.wait_for_signal, node]}
796
+ );
734
797
  }
735
798
  return childs;
736
799
  }, //}}}
@@ -769,60 +832,65 @@ function WFAdaptorManifestationBase(adaptor) {
769
832
  if(node.parents('parallel').length > node.parents('parallel_branch').length && node.get(0).tagName == 'alternative') {
770
833
  return [{'label': 'Parallel Branch',
771
834
  'function_call': func,
772
- 'menu_icon': self.elements.parallel_branch.illustrator.svg.clone(),
835
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel_branch.illustrator.svg),
773
836
  'type': 'parallel_branch',
774
837
  'params': [self.adaptor.description.elements.parallel_branch, node]}];
775
838
  }
776
839
  var childs = [
777
840
  {'label': 'Service Call with Scripts',
778
841
  'function_call': func,
779
- 'menu_icon': self.elements.callmanipulate.illustrator.svg.clone(),
842
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg),
780
843
  'type': 'callmanipulate',
781
844
  'params': [self.adaptor.description.elements.callmanipulate, node]},
782
845
  {'label': 'Service Call',
783
846
  'function_call': func,
784
- 'menu_icon': self.elements.call.illustrator.svg.clone(),
847
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.call.illustrator.svg),
785
848
  'type': 'call',
786
849
  'params': [self.adaptor.description.elements.call, node]},
787
850
  {'label': 'Script',
788
851
  'function_call': func,
789
- 'menu_icon': self.elements.manipulate.illustrator.svg.clone(),
852
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.manipulate.illustrator.svg),
790
853
  'type': 'manipulate',
791
854
  'params': [self.adaptor.description.elements.manipulate, node]},
792
855
  {'label': 'Parallel',
793
856
  'function_call': func,
794
- 'menu_icon': self.elements.parallel.illustrator.svg.clone(),
857
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel.illustrator.svg),
795
858
  'type': 'parallel',
796
859
  'params': [self.adaptor.description.elements.parallel, node]},
797
860
  {'label': 'Decision',
798
861
  'function_call': func,
799
- 'menu_icon': self.elements.choose.illustrator.svg.clone(),
862
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.choose.illustrator.svg),
800
863
  'type': 'choose',
801
864
  'params': [self.adaptor.description.elements.choose, node]},
802
865
  {'label': 'Loop',
803
866
  'function_call': func,
804
- 'menu_icon': self.elements.loop.illustrator.svg.clone(),
867
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.loop.illustrator.svg),
805
868
  'type': 'loop',
806
869
  'params': [self.adaptor.description.elements.loop, node]},
807
870
  {'label': 'Terminate',
808
871
  'function_call': func,
809
- 'menu_icon': self.elements.terminate.illustrator.svg.clone(),
872
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.terminate.illustrator.svg),
810
873
  'type': 'terminate',
811
874
  'params': [self.adaptor.description.elements.terminate, node]},
812
875
  {'label': 'Stop',
813
876
  'function_call': func,
814
- 'menu_icon': self.elements.stop.illustrator.svg.clone(),
877
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.stop.illustrator.svg),
815
878
  'type': 'stop',
816
879
  'params': [self.adaptor.description.elements.stop, node]}
817
880
  ];
818
- if(node.parent('parallel_branch').length > 0) {
819
- childs.push({
820
- 'label': 'Critical',
881
+ if(node.parents('parallel_branch').length > 0) {
882
+ childs.push(
883
+ {'label': 'Critical',
821
884
  'function_call': func,
822
- 'menu_icon': self.elements.critical.illustrator.svg.clone(),
885
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.critical.illustrator.svg),
823
886
  'type': 'critical',
824
- 'params': [self.adaptor.description.elements.critical, node]
825
- });
887
+ 'params': [self.adaptor.description.elements.critical, node]},
888
+ {'label': 'Wait for Signal',
889
+ 'function_call': func,
890
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.wait_for_signal.illustrator.svg),
891
+ 'type': 'wait_for_signal',
892
+ 'params': [self.adaptor.description.elements.wait_for_signal, node]}
893
+ );
826
894
  }
827
895
  return childs;
828
896
  }, //}}}
@@ -862,60 +930,65 @@ function WFAdaptorManifestationBase(adaptor) {
862
930
  var childs = [
863
931
  {'label': 'Service Call with Scripts',
864
932
  'function_call': func,
865
- 'menu_icon': self.elements.callmanipulate.illustrator.svg.clone(),
933
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg),
866
934
  'type': 'callmanipulate',
867
935
  'params': [self.adaptor.description.elements.callmanipulate, node]},
868
936
  {'label': 'Service Call',
869
937
  'function_call': func,
870
- 'menu_icon': self.elements.call.illustrator.svg.clone(),
938
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.call.illustrator.svg),
871
939
  'type': 'call',
872
940
  'params': [self.adaptor.description.elements.call, node]},
873
941
  {'label': 'Script',
874
942
  'function_call': func,
875
- 'menu_icon': self.elements.manipulate.illustrator.svg.clone(),
943
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.manipulate.illustrator.svg),
876
944
  'type': 'manipulate',
877
945
  'params': [self.adaptor.description.elements.manipulate, node]},
878
946
  {'label': 'Decision',
879
947
  'function_call': func,
880
- 'menu_icon': self.elements.choose.illustrator.svg.clone(),
948
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.choose.illustrator.svg),
881
949
  'type': 'choose',
882
950
  'params': [self.adaptor.description.elements.choose, node]},
883
951
  {'label': 'Loop',
884
952
  'function_call': func,
885
- 'menu_icon': self.elements.loop.illustrator.svg.clone(),
953
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.loop.illustrator.svg),
886
954
  'type': 'loop',
887
955
  'params': [self.adaptor.description.elements.loop, node]},
888
956
  {'label': 'Terminate',
889
957
  'function_call': func,
890
- 'menu_icon': self.elements.terminate.illustrator.svg.clone(),
958
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.terminate.illustrator.svg),
891
959
  'type': 'terminate',
892
960
  'params': [self.adaptor.description.elements.terminate, node]},
893
961
  {'label': 'Stop',
894
962
  'function_call': func,
895
- 'menu_icon': self.elements.stop.illustrator.svg.clone(),
963
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.stop.illustrator.svg),
896
964
  'type': 'stop',
897
965
  'params': [self.adaptor.description.elements.stop, node]}
898
966
  ];
899
- if(node.parent('parallel_branch').length > 0) {
900
- childs.push({
901
- 'label': 'Critical',
967
+ if(node.parents('parallel_branch').length > 0) {
968
+ childs.push(
969
+ {'label': 'Critical',
902
970
  'function_call': func,
903
- 'menu_icon': self.elements.critical.illustrator.svg.clone(),
971
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.critical.illustrator.svg),
904
972
  'type': 'critical',
905
- 'params': [self.adaptor.description.elements.critical, node]
906
- });
973
+ 'params': [self.adaptor.description.elements.critical, node]},
974
+ {'label': 'Wait for Signal',
975
+ 'function_call': func,
976
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.wait_for_signal.illustrator.svg),
977
+ 'type': 'wait_for_signal',
978
+ 'params': [self.adaptor.description.elements.wait_for_signal, node]}
979
+ );
907
980
  }
908
- if(node.parent('parallel').length > node.parent('parallel_branch').length) {
981
+ if(node.parents('parallel').length > node.parents('parallel_branch').length) {
909
982
  childs.push({'label': 'Parallel Branch',
910
983
  'function_call': func,
911
- 'menu_icon': self.elements.parallel_branch.illustrator.svg.clone(),
984
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel_branch.illustrator.svg),
912
985
  'type': 'parallel_branch',
913
986
  'params': [self.adaptor.description.elements.parallel_branch, node]}
914
987
  );
915
988
  } else {
916
989
  childs.push({'label': 'Parallel',
917
990
  'function_call': func,
918
- 'menu_icon': self.elements.parallel.illustrator.svg.clone(),
991
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel.illustrator.svg),
919
992
  'type': 'parallel',
920
993
  'params': [self.adaptor.description.elements.parallel, node]}
921
994
  );
@@ -965,7 +1038,7 @@ function WFAdaptorManifestationBase(adaptor) {
965
1038
  var childs = [
966
1039
  {'label': 'Parallel Branch',
967
1040
  'function_call': func,
968
- 'menu_icon': self.elements.parallel_branch.illustrator.svg.clone(),
1041
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel_branch.illustrator.svg),
969
1042
  'type': 'parallel_branch',
970
1043
  'params': [self.adaptor.description.elements.parallel_branch, node]},
971
1044
  ];
@@ -978,39 +1051,39 @@ function WFAdaptorManifestationBase(adaptor) {
978
1051
  var childs = [
979
1052
  {'label': 'Service Call with Scripts',
980
1053
  'function_call': func,
981
- 'menu_icon': self.elements.callmanipulate.illustrator.svg.clone(),
1054
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg),
982
1055
  'type': 'callmanipulate',
983
1056
  'params': [self.adaptor.description.elements.callmanipulate, node]},
984
1057
  {'label': 'Service Call',
985
1058
  'function_call': func,
986
- 'menu_icon': self.elements.call.illustrator.svg.clone(),
1059
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.call.illustrator.svg),
987
1060
  'type': 'call',
988
1061
  'params': [self.adaptor.description.elements.call, node]},
989
1062
  {'label': 'Script',
990
1063
  'function_call': func,
991
- 'menu_icon': self.elements.manipulate.illustrator.svg.clone(),
1064
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.manipulate.illustrator.svg),
992
1065
  'type': 'manipulate',
993
1066
  'params': [self.adaptor.description.elements.manipulate, node]},
994
1067
  {'label': 'Decision',
995
1068
  'function_call': func,
996
- 'menu_icon': self.elements.choose.illustrator.svg.clone(),
1069
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.choose.illustrator.svg),
997
1070
  'type': 'choose',
998
1071
  'params': [self.adaptor.description.elements.choose, node]},
999
1072
  {'label': 'Loop',
1000
1073
  'function_call': func,
1001
- 'menu_icon': self.elements.loop.illustrator.svg.clone(),
1074
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.loop.illustrator.svg),
1002
1075
  'type': 'loop',
1003
1076
  'params': [self.adaptor.description.elements.loop, node]},
1004
1077
  {'label': 'Stop',
1005
1078
  'function_call': func,
1006
- 'menu_icon': self.elements.stop.illustrator.svg.clone(),
1079
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.stop.illustrator.svg),
1007
1080
  'type': 'stop',
1008
1081
  'params': [self.adaptor.description.elements.stop, node]}
1009
1082
  ];
1010
1083
  if(node.get(0).tagName != 'parallel')
1011
1084
  childs.push({'label': 'Parallel',
1012
1085
  'function_call': self.adaptor.description.insert_last_into,
1013
- 'menu_icon': self.elements.parallel.illustrator.svg.clone(),
1086
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel.illustrator.svg),
1014
1087
  'type': 'parallel',
1015
1088
  'params': [self.adaptor.description.elements.parallel, node]});
1016
1089
  return childs;
@@ -1056,54 +1129,59 @@ function WFAdaptorManifestationBase(adaptor) {
1056
1129
  var childs = [
1057
1130
  {'label': 'Service Call with Scripts',
1058
1131
  'function_call': func,
1059
- 'menu_icon': self.elements.callmanipulate.illustrator.svg.clone(),
1132
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg),
1060
1133
  'type': 'callmanipulate',
1061
1134
  'params': [self.adaptor.description.elements.callmanipulate, node]},
1062
1135
  {'label': 'Service Call',
1063
1136
  'function_call': func,
1064
- 'menu_icon': self.elements.call.illustrator.svg.clone(),
1137
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.call.illustrator.svg),
1065
1138
  'type': 'call',
1066
1139
  'params': [self.adaptor.description.elements.call, node]},
1067
1140
  {'label': 'Script',
1068
1141
  'function_call': func,
1069
- 'menu_icon': self.elements.manipulate.illustrator.svg.clone(),
1142
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.manipulate.illustrator.svg),
1070
1143
  'type': 'manipulate',
1071
1144
  'params': [self.adaptor.description.elements.manipulate, node]},
1072
1145
  {'label': 'Parallel',
1073
1146
  'function_call': func,
1074
- 'menu_icon': self.elements.parallel.illustrator.svg.clone(),
1147
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel.illustrator.svg),
1075
1148
  'type': 'parallel',
1076
1149
  'params': [self.adaptor.description.elements.parallel, node]},
1077
1150
  {'label': 'Decision',
1078
1151
  'function_call': func,
1079
- 'menu_icon': self.elements.choose.illustrator.svg.clone(),
1152
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.choose.illustrator.svg),
1080
1153
  'type': 'choose',
1081
1154
  'params': [self.adaptor.description.elements.choose, node]},
1082
1155
  {'label': 'Loop',
1083
1156
  'function_call': func,
1084
- 'menu_icon': self.elements.loop.illustrator.svg.clone(),
1157
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.loop.illustrator.svg),
1085
1158
  'type': 'loop',
1086
1159
  'params': [self.adaptor.description.elements.loop, node]},
1087
1160
  {'label': 'Terminate',
1088
1161
  'function_call': func,
1089
- 'menu_icon': self.elements.terminate.illustrator.svg.clone(),
1162
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.terminate.illustrator.svg),
1090
1163
  'type': 'terminate',
1091
1164
  'params': [self.adaptor.description.elements.terminate, node]},
1092
1165
  {'label': 'Stop',
1093
1166
  'function_call': func,
1094
- 'menu_icon': self.elements.stop.illustrator.svg.clone(),
1167
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.stop.illustrator.svg),
1095
1168
  'type': 'stop',
1096
1169
  'params': [self.adaptor.description.elements.stop, node]},
1097
1170
  {'label': 'Critical',
1098
1171
  'function_call': func,
1099
- 'menu_icon': self.elements.critical.illustrator.svg.clone(),
1172
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.critical.illustrator.svg),
1100
1173
  'type': 'critical',
1101
- 'params': [self.adaptor.description.elements.critical, node]}
1174
+ 'params': [self.adaptor.description.elements.critical, node]},
1175
+ {'label': 'Wait for Signal',
1176
+ 'function_call': func,
1177
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.wait_for_signal.illustrator.svg),
1178
+ 'type': 'wait_for_signal',
1179
+ 'params': [self.adaptor.description.elements.wait_for_signal, node]}
1102
1180
  ];
1103
1181
  if(node.parents('choose').length > node.parents('alternative, otherwise').length && node.get(0).tagName == 'parallel_branch') {
1104
1182
  return [{'label': 'Alternative',
1105
1183
  'function_call': func,
1106
- 'menu_icon': self.elements.alternative.illustrator.svg.clone(),
1184
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.alternative.illustrator.svg),
1107
1185
  'type': 'alternative',
1108
1186
  'params': [self.adaptor.description.elements.alternative, node]}];
1109
1187
  }
@@ -1141,53 +1219,58 @@ function WFAdaptorManifestationBase(adaptor) {
1141
1219
  var childs = [
1142
1220
  {'label': 'Service Call with Scripts',
1143
1221
  'function_call': func,
1144
- 'menu_icon': self.elements.callmanipulate.illustrator.svg.clone(),
1222
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg),
1145
1223
  'type': 'callmanipulate',
1146
1224
  'params': [self.adaptor.description.elements.callmanipulate, node]},
1147
1225
  {'label': 'Service Call',
1148
1226
  'function_call': func,
1149
- 'menu_icon': self.elements.call.illustrator.svg.clone(),
1227
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.call.illustrator.svg),
1150
1228
  'type': 'call',
1151
1229
  'params': [self.adaptor.description.elements.call, node]},
1152
1230
  {'label': 'Script',
1153
1231
  'function_call': func,
1154
- 'menu_icon': self.elements.manipulate.illustrator.svg.clone(),
1232
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.manipulate.illustrator.svg),
1155
1233
  'type': 'manipulate',
1156
1234
  'params': [self.adaptor.description.elements.manipulate, node]},
1157
1235
  {'label': 'Parallel',
1158
1236
  'function_call': func,
1159
- 'menu_icon': self.elements.parallel.illustrator.svg.clone(),
1237
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel.illustrator.svg),
1160
1238
  'type': 'parallel',
1161
1239
  'params': [self.adaptor.description.elements.parallel, node]},
1162
1240
  {'label': 'Decision',
1163
1241
  'function_call': func,
1164
- 'menu_icon': self.elements.choose.illustrator.svg.clone(),
1242
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.choose.illustrator.svg),
1165
1243
  'type': 'choose',
1166
1244
  'params': [self.adaptor.description.elements.choose, node]},
1167
1245
  {'label': 'Loop',
1168
1246
  'function_call': func,
1169
- 'menu_icon': self.elements.loop.illustrator.svg.clone(),
1247
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.loop.illustrator.svg),
1170
1248
  'type': 'loop',
1171
1249
  'params': [self.adaptor.description.elements.loop, node]},
1172
1250
  {'label': 'Terminate',
1173
1251
  'function_call': func,
1174
- 'menu_icon': self.elements.terminate.illustrator.svg.clone(),
1252
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.terminate.illustrator.svg),
1175
1253
  'type': 'terminate',
1176
1254
  'params': [self.adaptor.description.elements.terminate, node]},
1177
1255
  {'label': 'Stop',
1178
1256
  'function_call': func,
1179
- 'menu_icon': self.elements.stop.illustrator.svg.clone(),
1257
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.stop.illustrator.svg),
1180
1258
  'type': 'stop',
1181
1259
  'params': [self.adaptor.description.elements.stop, node]}
1182
1260
  ];
1183
- if(node.parent('parallel_branch').length > 0) {
1184
- childs.push({
1185
- 'label': 'Critical',
1261
+ if(node.parents('parallel_branch').length > 0) {
1262
+ childs.push(
1263
+ {'label': 'Critical',
1186
1264
  'function_call': func,
1187
- 'menu_icon': self.elements.critical.illustrator.svg.clone(),
1265
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.critical.illustrator.svg),
1188
1266
  'type': 'critical',
1189
- 'params': [self.adaptor.description.elements.critical, node]
1190
- });
1267
+ 'params': [self.adaptor.description.elements.critical, node]},
1268
+ {'label': 'Wait for Signal',
1269
+ 'function_call': func,
1270
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.wait_for_signal.illustrator.svg),
1271
+ 'type': 'wait_for_signal',
1272
+ 'params': [self.adaptor.description.elements.wait_for_signal, node]}
1273
+ );
1191
1274
  }
1192
1275
  return childs;
1193
1276
  }, //}}}
@@ -1237,6 +1320,14 @@ function WFAdaptorManifestationBase(adaptor) {
1237
1320
  'type': 'description',
1238
1321
  'illustrator': {//{{{
1239
1322
  'endnodes': 'passthrough',
1323
+ 'style': function(node) {
1324
+ let sty = {};
1325
+ let col = $(node).attr('color');
1326
+ if (col && col != '') {
1327
+ sty['fill'] = col;
1328
+ }
1329
+ return sty;
1330
+ },
1240
1331
  'closeblock': false,
1241
1332
  'balance': true,
1242
1333
  'expansion': function(node) {
@@ -1261,13 +1352,11 @@ function WFAdaptorManifestationBase(adaptor) {
1261
1352
  item += n.textContent + '\n';
1262
1353
  }
1263
1354
  $('call > parameters > arguments > *, call > code > finalize, call > code > update, call > code > rescue',n).each(function(j,m){
1264
- console.log('aaa');
1265
1355
  let x = m.textContent;
1266
1356
  if (m.parentNode.nodeName == 'arguments' && x.charAt(0) != '!' ) { return }
1267
1357
  item += x + '\n';
1268
1358
  });
1269
1359
  }
1270
- console.log(item);
1271
1360
  if (item == '') { return; }
1272
1361
 
1273
1362
  let indices = [];
@@ -1303,49 +1392,40 @@ function WFAdaptorManifestationBase(adaptor) {
1303
1392
  var childs = [
1304
1393
  {'label': 'Service Call with Scripts',
1305
1394
  'function_call': func,
1306
- 'menu_icon': self.elements.callmanipulate.illustrator.svg.clone(),
1395
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.callmanipulate.illustrator.svg),
1307
1396
  'type': 'callmanipulate',
1308
1397
  'params': [self.adaptor.description.elements.callmanipulate, node]},
1309
1398
  {'label': 'Service Call',
1310
1399
  'function_call': func,
1311
- 'menu_icon': self.elements.call.illustrator.svg.clone(),
1400
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.call.illustrator.svg),
1312
1401
  'type': 'call',
1313
1402
  'params': [self.adaptor.description.elements.call, node]},
1314
1403
  {'label': 'Script',
1315
1404
  'function_call': func,
1316
- 'menu_icon': self.elements.manipulate.illustrator.svg.clone(),
1405
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.manipulate.illustrator.svg),
1317
1406
  'type': 'manipulate',
1318
1407
  'params': [self.adaptor.description.elements.manipulate, node]},
1319
1408
  {'label': 'Parallel',
1320
1409
  'function_call': func,
1321
- 'menu_icon': self.elements.parallel.illustrator.svg.clone(),
1410
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.parallel.illustrator.svg),
1322
1411
  'type': 'parallel',
1323
1412
  'params': [self.adaptor.description.elements.parallel, node]},
1324
1413
  {'label': 'Decision',
1325
1414
  'function_call': func,
1326
- 'menu_icon': self.elements.choose.illustrator.svg.clone(),
1415
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.choose.illustrator.svg),
1327
1416
  'type': 'choose',
1328
1417
  'params': [self.adaptor.description.elements.choose, node]},
1329
1418
  {'label': 'Loop',
1330
1419
  'function_call': func,
1331
- 'menu_icon': self.elements.loop.illustrator.svg.clone(),
1420
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.loop.illustrator.svg),
1332
1421
  'type': 'loop',
1333
1422
  'params': [self.adaptor.description.elements.loop, node]},
1334
1423
  {'label': 'Stop',
1335
1424
  'function_call': func,
1336
- 'menu_icon': self.elements.stop.illustrator.svg.clone(),
1425
+ 'menu_icon': contextMenuHandling_clean_icon(self.elements.stop.illustrator.svg),
1337
1426
  'type': 'stop',
1338
1427
  'params': [self.adaptor.description.elements.stop, node]}
1339
1428
  ];
1340
- if(node.parent('parallel_branch').length > 0) {
1341
- childs.push({
1342
- 'label': 'Critical',
1343
- 'function_call': func,
1344
- 'menu_icon': self.elements.critical.illustrator.svg.clone(),
1345
- 'type': 'critical',
1346
- 'params': [self.adaptor.description.elements.critical, node]
1347
- });
1348
- }
1349
1429
  return childs;
1350
1430
  }, //}}}
1351
1431
  'adaptor': {//{{{
@@ -1378,7 +1458,17 @@ function WFAdaptorManifestationBase(adaptor) {
1378
1458
  'parent': 'call',
1379
1459
  'description': self.adaptor.theme_dir + 'rngs/callmanipulate.rng',
1380
1460
  'illustrator': {//{{{
1381
- 'info': function(node){ return { 'element-endpoint': $(node).attr('endpoint') }; },
1461
+ 'style': function(node){
1462
+ let sty = {};
1463
+ let col = $('> parameters > color', node);
1464
+ if (col.length > 0 && col.text() != '') {
1465
+ sty['fill'] = col.text();
1466
+ }
1467
+ return sty;
1468
+ },
1469
+ 'info': function(node){
1470
+ return { 'element-endpoint': $(node).attr('endpoint') };
1471
+ },
1382
1472
  'svg': self.adaptor.theme_dir + 'symbols/callmanipulate.svg'
1383
1473
  }//}}}
1384
1474
  }; /*}}}*/
@@ -1389,6 +1479,20 @@ function WFAdaptorManifestationBase(adaptor) {
1389
1479
  'svg': self.adaptor.theme_dir + 'symbols/callmanipulate_sensor.svg'
1390
1480
  }//}}}
1391
1481
  }; /*}}}*/
1482
+ this.elements.callmanipulate_signal = { /*{{{*/
1483
+ 'parent': 'call',
1484
+ 'description': self.adaptor.theme_dir + 'rngs/callmanipulate.rng',
1485
+ 'illustrator': {//{{{
1486
+ 'svg': self.adaptor.theme_dir + 'symbols/callmanipulate_signal.svg'
1487
+ }//}}}
1488
+ }; /*}}}*/
1489
+ this.elements.callmanipulate_sensor_signal = { /*{{{*/
1490
+ 'parent': 'call',
1491
+ 'description': self.adaptor.theme_dir + 'rngs/callmanipulate.rng',
1492
+ 'illustrator': {//{{{
1493
+ 'svg': self.adaptor.theme_dir + 'symbols/callmanipulate_sensor_signal.svg'
1494
+ }//}}}
1495
+ }; /*}}}*/
1392
1496
  this.elements.loop_head = { /*{{{*/
1393
1497
  'parent': 'loop',
1394
1498
  'illustrator': {//{{{
@@ -1423,13 +1527,13 @@ function WFAdaptorManifestationBase(adaptor) {
1423
1527
  this.elements.choose_inclusive_finish = { /*{{{*/
1424
1528
  'parent': 'choose_finish',
1425
1529
  'illustrator': {//{{{
1426
- 'svg': self.adaptor.theme_dir + 'symbols/choose_inclusive.svg'
1530
+ 'svg': self.adaptor.theme_dir + 'symbols/choose_inclusive_finish.svg'
1427
1531
  }//}}}
1428
1532
  }; /*}}}*/
1429
1533
  this.elements.choose_exclusive_finish = { /*{{{*/
1430
1534
  'parent': 'choose_finish',
1431
1535
  'illustrator': {//{{{
1432
- 'svg': self.adaptor.theme_dir + 'symbols/choose_exclusive.svg'
1536
+ 'svg': self.adaptor.theme_dir + 'symbols/choose_exclusive_finish.svg'
1433
1537
  },//}}}
1434
1538
  }; /*}}}*/
1435
1539
  this.elements.loop_head_finish = { /*{{{*/
@@ -1507,13 +1611,6 @@ function WFAdaptorManifestationBase(adaptor) {
1507
1611
  'svg': self.adaptor.theme_dir + 'symbols/parallel_branch_event.svg'
1508
1612
  }//}}}
1509
1613
  }; /*}}}*/
1510
- this.elements.parallel_branch_compact = { /*{{{*/
1511
- 'parent': 'parallel_branch',
1512
- 'illustrator': {//{{{
1513
- 'endnodes': 'this',
1514
- 'svg': self.adaptor.theme_dir + 'symbols/parallel_branch_compact.svg'
1515
- }//}}}
1516
- }; /*}}}*/
1517
1614
  this.elements.scripts = { /*{{{*/
1518
1615
  'description': [self.adaptor.theme_dir + 'rngs/scripts.rng']
1519
1616
  }; /*}}}*/