jruby_activiti 1.2.5 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (317) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -1
  3. data/.ruby-version +1 -1
  4. data/CHANGELOG +6 -0
  5. data/Jarfile +5 -0
  6. data/Jarfile.lock +52 -13
  7. data/README.md +21 -9
  8. data/java/build.md +3 -0
  9. data/java/mapping.md +20 -0
  10. data/java/pom.xml +30 -0
  11. data/java/src/main/java/jrubyactiviti/Modeler.java +95 -0
  12. data/java/src/main/java/jrubyactiviti/ProcessDiagram.java +491 -0
  13. data/java/src/main/java/jrubyactiviti/ProcessInstanceHighlights.java +237 -0
  14. data/java/src/main/java/jrubyactiviti/StencilsetResource.java +16 -0
  15. data/java/src/main/resources/stencilset.json +1339 -0
  16. data/jruby_activiti.gemspec +3 -2
  17. data/lib/generators/jruby_activiti/install_generator.rb +4 -0
  18. data/lib/jar/jrubyactiviti-2.0.jar +0 -0
  19. data/lib/jruby_activiti/version.rb +1 -1
  20. data/lib/jruby_activiti/web.rb +81 -0
  21. data/lib/jruby_activiti.rb +28 -20
  22. data/test/{base_test.rb → activiti_test.rb} +1 -3
  23. data/test/instance_hights_test.rb +18 -0
  24. data/test/modeler_test.rb +35 -0
  25. data/test/process_diagram_test.rb +33 -0
  26. data/test/resources/model_init_editor_source.json +1 -0
  27. data/test/resources/model_json_xml.json +278 -0
  28. data/test/resources/model_svg_xml.xml +66 -0
  29. data/test/stencilset_test.rb +7 -0
  30. data/test/test_helper.rb +2 -0
  31. data/web/public/diagram-viewer/images/bg.png +0 -0
  32. data/web/public/diagram-viewer/images/breadcrumbs.png +0 -0
  33. data/web/public/diagram-viewer/images/checker-bg.png +0 -0
  34. data/web/public/diagram-viewer/images/deployer/blue/message_catch.png +0 -0
  35. data/web/public/diagram-viewer/images/deployer/business_rule.png +0 -0
  36. data/web/public/diagram-viewer/images/deployer/error_catch.png +0 -0
  37. data/web/public/diagram-viewer/images/deployer/error_throw.png +0 -0
  38. data/web/public/diagram-viewer/images/deployer/manual.png +0 -0
  39. data/web/public/diagram-viewer/images/deployer/message_catch.png +0 -0
  40. data/web/public/diagram-viewer/images/deployer/message_throw.png +0 -0
  41. data/web/public/diagram-viewer/images/deployer/receive.png +0 -0
  42. data/web/public/diagram-viewer/images/deployer/script.png +0 -0
  43. data/web/public/diagram-viewer/images/deployer/send.png +0 -0
  44. data/web/public/diagram-viewer/images/deployer/service.png +0 -0
  45. data/web/public/diagram-viewer/images/deployer/signal_catch.png +0 -0
  46. data/web/public/diagram-viewer/images/deployer/signal_throw.png +0 -0
  47. data/web/public/diagram-viewer/images/deployer/timer.png +0 -0
  48. data/web/public/diagram-viewer/images/deployer/user.png +0 -0
  49. data/web/public/diagram-viewer/index.html +130 -0
  50. data/web/public/diagram-viewer/js/ActivitiRest.js +74 -0
  51. data/web/public/diagram-viewer/js/ActivityImpl.js +1 -0
  52. data/web/public/diagram-viewer/js/Color.js +603 -0
  53. data/web/public/diagram-viewer/js/LineBreakMeasurer.js +270 -0
  54. data/web/public/diagram-viewer/js/Polyline.js +387 -0
  55. data/web/public/diagram-viewer/js/ProcessDiagramCanvas.js +2172 -0
  56. data/web/public/diagram-viewer/js/ProcessDiagramGenerator.js +1087 -0
  57. data/web/public/diagram-viewer/js/jquery/jquery.asyncqueue.js +125 -0
  58. data/web/public/diagram-viewer/js/jquery/jquery.js +9266 -0
  59. data/web/public/diagram-viewer/js/jquery/jquery.progressbar.js +131 -0
  60. data/web/public/diagram-viewer/js/jstools.js +23 -0
  61. data/web/public/diagram-viewer/js/raphael.2.1.1.js +10 -0
  62. data/web/public/diagram-viewer/js/raphael.js +10 -0
  63. data/web/public/diagram-viewer/js/raphael_uncompressed.js +5815 -0
  64. data/web/public/diagram-viewer/js/textlayout.js +441 -0
  65. data/web/public/diagram-viewer/style.css +1 -0
  66. data/web/public/editor-app/app-cfg.js +25 -0
  67. data/web/public/editor-app/app.js +432 -0
  68. data/web/public/editor-app/configuration/properties/assignment-display-template.html +4 -0
  69. data/web/public/editor-app/configuration/properties/assignment-popup.html +44 -0
  70. data/web/public/editor-app/configuration/properties/assignment-write-template.html +4 -0
  71. data/web/public/editor-app/configuration/properties/boolean-property-template.html +4 -0
  72. data/web/public/editor-app/configuration/properties/condition-expression-display-template.html +2 -0
  73. data/web/public/editor-app/configuration/properties/condition-expression-popup.html +29 -0
  74. data/web/public/editor-app/configuration/properties/condition-expression-write-template.html +4 -0
  75. data/web/public/editor-app/configuration/properties/default-value-display-template.html +4 -0
  76. data/web/public/editor-app/configuration/properties/event-listeners-display-template.html +3 -0
  77. data/web/public/editor-app/configuration/properties/event-listeners-popup.html +115 -0
  78. data/web/public/editor-app/configuration/properties/event-listeners-write-template.html +4 -0
  79. data/web/public/editor-app/configuration/properties/execution-listeners-display-template.html +3 -0
  80. data/web/public/editor-app/configuration/properties/execution-listeners-popup.html +101 -0
  81. data/web/public/editor-app/configuration/properties/execution-listeners-write-template.html +4 -0
  82. data/web/public/editor-app/configuration/properties/feedback-popup.html +17 -0
  83. data/web/public/editor-app/configuration/properties/fields-display-template.html +3 -0
  84. data/web/public/editor-app/configuration/properties/fields-popup.html +61 -0
  85. data/web/public/editor-app/configuration/properties/fields-write-template.html +4 -0
  86. data/web/public/editor-app/configuration/properties/form-properties-display-template.html +3 -0
  87. data/web/public/editor-app/configuration/properties/form-properties-popup.html +93 -0
  88. data/web/public/editor-app/configuration/properties/form-properties-write-template.html +4 -0
  89. data/web/public/editor-app/configuration/properties/in-parameters-display-template.html +3 -0
  90. data/web/public/editor-app/configuration/properties/in-parameters-popup.html +53 -0
  91. data/web/public/editor-app/configuration/properties/in-parameters-write-template.html +4 -0
  92. data/web/public/editor-app/configuration/properties/message-definitions-display-template.html +2 -0
  93. data/web/public/editor-app/configuration/properties/message-definitions-popup.html +50 -0
  94. data/web/public/editor-app/configuration/properties/message-definitions-write-template.html +3 -0
  95. data/web/public/editor-app/configuration/properties/message-property-write-template.html +4 -0
  96. data/web/public/editor-app/configuration/properties/multiinstance-property-write-template.html +8 -0
  97. data/web/public/editor-app/configuration/properties/out-parameters-display-template.html +3 -0
  98. data/web/public/editor-app/configuration/properties/out-parameters-popup.html +53 -0
  99. data/web/public/editor-app/configuration/properties/out-parameters-write-template.html +4 -0
  100. data/web/public/editor-app/configuration/properties/sequenceflow-order-display-template.html +3 -0
  101. data/web/public/editor-app/configuration/properties/sequenceflow-order-popup.html +47 -0
  102. data/web/public/editor-app/configuration/properties/sequenceflow-order-write-template.html +4 -0
  103. data/web/public/editor-app/configuration/properties/signal-definitions-display-template.html +3 -0
  104. data/web/public/editor-app/configuration/properties/signal-definitions-popup.html +58 -0
  105. data/web/public/editor-app/configuration/properties/signal-definitions-write-template.html +4 -0
  106. data/web/public/editor-app/configuration/properties/signal-property-write-template.html +4 -0
  107. data/web/public/editor-app/configuration/properties/string-property-write-mode-template.html +8 -0
  108. data/web/public/editor-app/configuration/properties/subprocess-reference-display-template.html +3 -0
  109. data/web/public/editor-app/configuration/properties/subprocess-reference-popup.html +43 -0
  110. data/web/public/editor-app/configuration/properties/subprocess-reference-write-template.html +4 -0
  111. data/web/public/editor-app/configuration/properties/task-listeners-display-template.html +3 -0
  112. data/web/public/editor-app/configuration/properties/task-listeners-popup.html +102 -0
  113. data/web/public/editor-app/configuration/properties/task-listeners-write-template.html +4 -0
  114. data/web/public/editor-app/configuration/properties/text-popup.html +17 -0
  115. data/web/public/editor-app/configuration/properties/text-property-write-template.html +4 -0
  116. data/web/public/editor-app/configuration/properties-assignment-controller.js +150 -0
  117. data/web/public/editor-app/configuration/properties-condition-expression-controller.js +58 -0
  118. data/web/public/editor-app/configuration/properties-custom-controllers.js +18 -0
  119. data/web/public/editor-app/configuration/properties-default-controllers.js +115 -0
  120. data/web/public/editor-app/configuration/properties-event-listeners-controller.js +266 -0
  121. data/web/public/editor-app/configuration/properties-execution-listeners-controller.js +326 -0
  122. data/web/public/editor-app/configuration/properties-fields-controller.js +192 -0
  123. data/web/public/editor-app/configuration/properties-form-properties-controller.js +192 -0
  124. data/web/public/editor-app/configuration/properties-in-parameters-controller.js +158 -0
  125. data/web/public/editor-app/configuration/properties-message-definitions-controller.js +137 -0
  126. data/web/public/editor-app/configuration/properties-message-scope-controller.js +48 -0
  127. data/web/public/editor-app/configuration/properties-multiinstance-controller.js +34 -0
  128. data/web/public/editor-app/configuration/properties-out-parameters-controller.js +158 -0
  129. data/web/public/editor-app/configuration/properties-sequenceflow-order-controller.js +130 -0
  130. data/web/public/editor-app/configuration/properties-signal-definitions-controller.js +136 -0
  131. data/web/public/editor-app/configuration/properties-signal-scope-controller.js +47 -0
  132. data/web/public/editor-app/configuration/properties-task-listeners-controller.js +325 -0
  133. data/web/public/editor-app/configuration/properties.js +99 -0
  134. data/web/public/editor-app/configuration/toolbar-custom-actions.js +18 -0
  135. data/web/public/editor-app/configuration/toolbar-default-actions.js +429 -0
  136. data/web/public/editor-app/configuration/toolbar.js +175 -0
  137. data/web/public/editor-app/configuration/url-config.js +34 -0
  138. data/web/public/editor-app/css/style-common.css +1518 -0
  139. data/web/public/editor-app/css/style-editor.css +639 -0
  140. data/web/public/editor-app/css/style.css +471 -0
  141. data/web/public/editor-app/editor/css/editor.css +202 -0
  142. data/web/public/editor-app/editor/i18n/translation_de.js +383 -0
  143. data/web/public/editor-app/editor/i18n/translation_en_us.js +423 -0
  144. data/web/public/editor-app/editor/i18n/translation_signavio_de.js +106 -0
  145. data/web/public/editor-app/editor/i18n/translation_signavio_en_us.js +108 -0
  146. data/web/public/editor-app/editor/oryx.debug.js +24510 -0
  147. data/web/public/editor-app/editor/oryx.js +30 -0
  148. data/web/public/editor-app/editor-config.js +32 -0
  149. data/web/public/editor-app/editor-controller.js +65 -0
  150. data/web/public/editor-app/editor-utils.js +135 -0
  151. data/web/public/editor-app/editor.html +136 -0
  152. data/web/public/editor-app/eventbus.js +133 -0
  153. data/web/public/editor-app/fonts/activiti-admin-webfont.eot +0 -0
  154. data/web/public/editor-app/fonts/activiti-admin-webfont.svg +43 -0
  155. data/web/public/editor-app/fonts/activiti-admin-webfont.ttf +0 -0
  156. data/web/public/editor-app/fonts/activiti-admin-webfont.woff +0 -0
  157. data/web/public/editor-app/fonts/glyphicons-halflings-regular.eot +0 -0
  158. data/web/public/editor-app/fonts/glyphicons-halflings-regular.svg +229 -0
  159. data/web/public/editor-app/fonts/glyphicons-halflings-regular.ttf +0 -0
  160. data/web/public/editor-app/fonts/glyphicons-halflings-regular.woff +0 -0
  161. data/web/public/editor-app/header-controller.js +31 -0
  162. data/web/public/editor-app/i18n/en.json +286 -0
  163. data/web/public/editor-app/images/bpmn-error.png +0 -0
  164. data/web/public/editor-app/images/bpmn-warning.png +0 -0
  165. data/web/public/editor-app/images/datadefinition.png +0 -0
  166. data/web/public/editor-app/images/delete.png +0 -0
  167. data/web/public/editor-app/images/loading.gif +0 -0
  168. data/web/public/editor-app/images/logo-2x.png +0 -0
  169. data/web/public/editor-app/images/logo.png +0 -0
  170. data/web/public/editor-app/images/nw-handle-dark.gif +0 -0
  171. data/web/public/editor-app/images/se-handle-dark.gif +0 -0
  172. data/web/public/editor-app/images/shapemenu_highlight.png +0 -0
  173. data/web/public/editor-app/images/wrench.png +0 -0
  174. data/web/public/editor-app/libs/angular-cookies_1.2.13/angular-cookies.min.js +8 -0
  175. data/web/public/editor-app/libs/angular-cookies_1.2.13/angular-cookies.min.js.map +8 -0
  176. data/web/public/editor-app/libs/angular-dragdrop.min-1.0.3.js +9 -0
  177. data/web/public/editor-app/libs/angular-dragdrop_1.0.7/angular-dragdrop.min.js +29 -0
  178. data/web/public/editor-app/libs/angular-mocks_1.2.13/angular-mocks.js +2136 -0
  179. data/web/public/editor-app/libs/angular-resource_1.2.13/angular-resource.js +596 -0
  180. data/web/public/editor-app/libs/angular-resource_1.2.13/angular-resource.min.js +13 -0
  181. data/web/public/editor-app/libs/angular-resource_1.2.13/angular-resource.min.js.map +8 -0
  182. data/web/public/editor-app/libs/angular-route_1.2.13/angular-route.js +921 -0
  183. data/web/public/editor-app/libs/angular-route_1.2.13/angular-route.min.js +14 -0
  184. data/web/public/editor-app/libs/angular-route_1.2.13/angular-route.min.js.map +8 -0
  185. data/web/public/editor-app/libs/angular-sanitize_1.2.13/angular-sanitize.js +625 -0
  186. data/web/public/editor-app/libs/angular-sanitize_1.2.13/angular-sanitize.min.js +14 -0
  187. data/web/public/editor-app/libs/angular-sanitize_1.2.13/angular-sanitize.min.js.map +8 -0
  188. data/web/public/editor-app/libs/angular-scroll_0.5.7/angular-scroll.min.js +1 -0
  189. data/web/public/editor-app/libs/angular-strap_2.0.5/angular-strap.min.js +9 -0
  190. data/web/public/editor-app/libs/angular-strap_2.0.5/angular-strap.tpl.min.js +8 -0
  191. data/web/public/editor-app/libs/angular-translate-loader-static-files/.bower.json +19 -0
  192. data/web/public/editor-app/libs/angular-translate-loader-static-files/angular-translate-loader-static-files.js +31 -0
  193. data/web/public/editor-app/libs/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js +6 -0
  194. data/web/public/editor-app/libs/angular-translate-storage-cookie/.bower.json +20 -0
  195. data/web/public/editor-app/libs/angular-translate-storage-cookie/angular-translate-storage-cookie.js +19 -0
  196. data/web/public/editor-app/libs/angular-translate-storage-cookie/angular-translate-storage-cookie.min.js +6 -0
  197. data/web/public/editor-app/libs/angular-translate_2.4.2/angular-translate.js +960 -0
  198. data/web/public/editor-app/libs/angular-translate_2.4.2/angular-translate.min.js +6 -0
  199. data/web/public/editor-app/libs/angular_1.2.13/angular-animate.min.js +27 -0
  200. data/web/public/editor-app/libs/angular_1.2.13/angular.min.js +204 -0
  201. data/web/public/editor-app/libs/bootstrap-daterangepicker_1.3.7/daterangepicker-bs3.css +267 -0
  202. data/web/public/editor-app/libs/bootstrap-daterangepicker_1.3.7/daterangepicker.js +1026 -0
  203. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap-theme.css +347 -0
  204. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap-theme.css.map +1 -0
  205. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap-theme.min.css +7 -0
  206. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap.css +5785 -0
  207. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap.css.map +1 -0
  208. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap.min.css +7 -0
  209. data/web/public/editor-app/libs/bootstrap_3.1.1/fonts/glyphicons-halflings-regular.eot +0 -0
  210. data/web/public/editor-app/libs/bootstrap_3.1.1/fonts/glyphicons-halflings-regular.svg +229 -0
  211. data/web/public/editor-app/libs/bootstrap_3.1.1/fonts/glyphicons-halflings-regular.ttf +0 -0
  212. data/web/public/editor-app/libs/bootstrap_3.1.1/fonts/glyphicons-halflings-regular.woff +0 -0
  213. data/web/public/editor-app/libs/bootstrap_3.1.1/js/bootstrap.js +1951 -0
  214. data/web/public/editor-app/libs/bootstrap_3.1.1/js/bootstrap.min.js +6 -0
  215. data/web/public/editor-app/libs/es5-shim-15.3.4.5/.bower.json +14 -0
  216. data/web/public/editor-app/libs/es5-shim-15.3.4.5/.gitignore +2 -0
  217. data/web/public/editor-app/libs/es5-shim-15.3.4.5/CHANGES +93 -0
  218. data/web/public/editor-app/libs/es5-shim-15.3.4.5/CONTRIBUTORS.md +25 -0
  219. data/web/public/editor-app/libs/es5-shim-15.3.4.5/LICENSE +19 -0
  220. data/web/public/editor-app/libs/es5-shim-15.3.4.5/README.md +161 -0
  221. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-sham.js +444 -0
  222. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-sham.map +1 -0
  223. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-sham.min.js +4 -0
  224. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-shim.js +1314 -0
  225. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-shim.map +1 -0
  226. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-shim.min.js +4 -0
  227. data/web/public/editor-app/libs/es5-shim-15.3.4.5/package.json +34 -0
  228. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/helpers/h-kill.js +64 -0
  229. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/helpers/h-matchers.js +34 -0
  230. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/helpers/h.js +3 -0
  231. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/index.html +64 -0
  232. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/index.min.html +63 -0
  233. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/jasmine-html.js +190 -0
  234. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/jasmine.css +166 -0
  235. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/jasmine.js +2477 -0
  236. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/jasmine_favicon.png +0 -0
  237. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/json2.js +478 -0
  238. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-array.js +1223 -0
  239. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-date.js +152 -0
  240. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-function.js +147 -0
  241. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-number.js +14 -0
  242. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-object.js +181 -0
  243. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-string.js +204 -0
  244. data/web/public/editor-app/libs/jquery-ui-1.10.3.custom.min.js +6 -0
  245. data/web/public/editor-app/libs/jquery.autogrow-textarea.js +61 -0
  246. data/web/public/editor-app/libs/jquery_1.11.0/jquery.js +9789 -0
  247. data/web/public/editor-app/libs/jquery_1.11.0/jquery.min.js +4 -0
  248. data/web/public/editor-app/libs/jquery_1.11.0/jquery.min.map +1 -0
  249. data/web/public/editor-app/libs/json3_3.2.6/LICENSE +20 -0
  250. data/web/public/editor-app/libs/json3_3.2.6/lib/json3.js +861 -0
  251. data/web/public/editor-app/libs/json3_3.2.6/lib/json3.min.js +18 -0
  252. data/web/public/editor-app/libs/momentjs_2.5.1/momentjs.min.js +6 -0
  253. data/web/public/editor-app/libs/mousetrap-1.4.5.min.js +9 -0
  254. data/web/public/editor-app/libs/ng-grid-2.0.7-min.js +2 -0
  255. data/web/public/editor-app/libs/ng-grid-2.0.7.min.css +1 -0
  256. data/web/public/editor-app/libs/path_parser.js +30 -0
  257. data/web/public/editor-app/libs/prototype-1.5.1.js +3272 -0
  258. data/web/public/editor-app/libs/ui-utils.min-0.0.4.js +7 -0
  259. data/web/public/editor-app/partials/root-stencil-item-template.html +11 -0
  260. data/web/public/editor-app/partials/stencil-item-template.html +27 -0
  261. data/web/public/editor-app/plugins.xml +58 -0
  262. data/web/public/editor-app/popups/icon-template.html +3 -0
  263. data/web/public/editor-app/popups/save-model.html +41 -0
  264. data/web/public/editor-app/popups/select-shape.html +20 -0
  265. data/web/public/editor-app/popups/unsaved-changes.html +22 -0
  266. data/web/public/editor-app/select-shape-controller.js +314 -0
  267. data/web/public/editor-app/stencil-controller.js +1421 -0
  268. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/event.subprocess.collapsed.png +0 -0
  269. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/event.subprocess.png +0 -0
  270. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/expanded.subprocess.png +0 -0
  271. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.business.rule.png +0 -0
  272. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.camel.png +0 -0
  273. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.manual.png +0 -0
  274. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.mule.png +0 -0
  275. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.receive.png +0 -0
  276. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.script.png +0 -0
  277. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.send.png +0 -0
  278. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.service.png +0 -0
  279. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.shell.png +0 -0
  280. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.user.png +0 -0
  281. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/subprocess.png +0 -0
  282. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/task.png +0 -0
  283. data/web/public/editor-app/stencilsets/bpmn2.0/icons/artifact/text.annotation.png +0 -0
  284. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/cancel.png +0 -0
  285. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/compensation.png +0 -0
  286. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/error.png +0 -0
  287. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/message.png +0 -0
  288. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/signal.png +0 -0
  289. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/timer.png +0 -0
  290. data/web/public/editor-app/stencilsets/bpmn2.0/icons/connector/association.undirected.png +0 -0
  291. data/web/public/editor-app/stencilsets/bpmn2.0/icons/connector/association.unidirectional.png +0 -0
  292. data/web/public/editor-app/stencilsets/bpmn2.0/icons/connector/messageflow.png +0 -0
  293. data/web/public/editor-app/stencilsets/bpmn2.0/icons/connector/sequenceflow.png +0 -0
  294. data/web/public/editor-app/stencilsets/bpmn2.0/icons/dataobject/data.store.png +0 -0
  295. data/web/public/editor-app/stencilsets/bpmn2.0/icons/diagram.png +0 -0
  296. data/web/public/editor-app/stencilsets/bpmn2.0/icons/endevent/cancel.png +0 -0
  297. data/web/public/editor-app/stencilsets/bpmn2.0/icons/endevent/error.png +0 -0
  298. data/web/public/editor-app/stencilsets/bpmn2.0/icons/endevent/none.png +0 -0
  299. data/web/public/editor-app/stencilsets/bpmn2.0/icons/endevent/terminate.png +0 -0
  300. data/web/public/editor-app/stencilsets/bpmn2.0/icons/gateway/eventbased.png +0 -0
  301. data/web/public/editor-app/stencilsets/bpmn2.0/icons/gateway/exclusive.databased.png +0 -0
  302. data/web/public/editor-app/stencilsets/bpmn2.0/icons/gateway/inclusive.png +0 -0
  303. data/web/public/editor-app/stencilsets/bpmn2.0/icons/gateway/parallel.png +0 -0
  304. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/error.png +0 -0
  305. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/message.png +0 -0
  306. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/none.png +0 -0
  307. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/signal.png +0 -0
  308. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/timer.png +0 -0
  309. data/web/public/editor-app/stencilsets/bpmn2.0/icons/swimlane/lane.png +0 -0
  310. data/web/public/editor-app/stencilsets/bpmn2.0/icons/swimlane/pool.png +0 -0
  311. data/web/public/editor-app/stencilsets/bpmn2.0/icons/throwing/none.png +0 -0
  312. data/web/public/editor-app/stencilsets/bpmn2.0/icons/throwing/signal.png +0 -0
  313. data/web/public/editor-app/toolbar-controller.js +162 -0
  314. data/web/public/modeler.html +140 -0
  315. data/web/views/models/index.erb +32 -0
  316. data/web/views/models/new.erb +15 -0
  317. metadata +334 -10
@@ -0,0 +1,32 @@
1
+ /*
2
+ * Activiti Modeler component part of the Activiti project
3
+ * Copyright 2005-2014 Alfresco Software, Ltd. All rights reserved.
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with this library; if not, write to the Free Software
17
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+ 'use strict';
20
+
21
+ var KISBPM = KISBPM || {};
22
+
23
+ KISBPM.CONFIG = {
24
+ 'showRemovedProperties' : false
25
+ };
26
+
27
+ KISBPM.HEADER_CONFIG = {
28
+ 'showAppTitle' : true,
29
+ 'showHeaderMenu' : true,
30
+ 'showMainNavigation' : true,
31
+ 'showPageHeader' : true
32
+ };
@@ -0,0 +1,65 @@
1
+ /*
2
+ * Activiti Modeler component part of the Activiti project
3
+ * Copyright 2005-2014 Alfresco Software, Ltd. All rights reserved.
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with this library; if not, write to the Free Software
17
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+ 'use strict';
20
+
21
+ angular.module('activitiModeler')
22
+ .controller('EditorUnsavedChangesPopupCrtl', ['$rootScope', '$scope', '$http', '$location', '$window', function ($rootScope, $scope, $http, $location, $window) {
23
+
24
+ $scope.ok = function () {
25
+ if ($scope.handleResponseFunction) {
26
+ $scope.handleResponseFunction(true);
27
+
28
+ // Also clear any 'onbeforeunload', added by oryx
29
+ $window.onbeforeunload = undefined;
30
+ }
31
+ $scope.$hide();
32
+ };
33
+
34
+ $scope.cancel = function () {
35
+ if ($scope.handleResponseFunction) {
36
+ $scope.handleResponseFunction(false);
37
+ }
38
+ $scope.$hide();
39
+ };
40
+ }]);
41
+
42
+ activitiModule
43
+ .directive('autoFocus', ['$timeout', '$parse', function($timeout, $parse) {
44
+ return {
45
+ restrict: 'AC',
46
+ compile: function($element, attr) {
47
+
48
+ return function(_scope, _element, _attrs) {
49
+ var firstChild = (_attrs.focusFirstChild !== undefined);
50
+ $timeout(function () {
51
+ if (firstChild) {
52
+ // look for first input-element in child-tree and focus that
53
+ var inputs = _element.find('input');
54
+ if (inputs && inputs.length > 0) {
55
+ inputs[0].focus();
56
+ }
57
+ } else {
58
+ // Focus element where the directive is put on
59
+ _element[0].focus();
60
+ }
61
+ }, 100);
62
+ }
63
+ }
64
+ };
65
+ }]);
@@ -0,0 +1,135 @@
1
+ /*
2
+ * Activiti Modeler component part of the Activiti project
3
+ * Copyright 2005-2014 Alfresco Software, Ltd. All rights reserved.
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with this library; if not, write to the Free Software
17
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+
20
+ /**
21
+ * Utility methods are grouped together here.
22
+ */
23
+ var EDITOR = EDITOR || {};
24
+
25
+ EDITOR.UTIL = {
26
+
27
+ getParameterByName: function (name) {
28
+ name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
29
+ var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
30
+ results = regex.exec(location.search);
31
+ return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
32
+ },
33
+
34
+ /**
35
+ * Starts at the provided start element, and walks all preceding elements in the graph.
36
+ * Each element is tested to have a certain property and, if it has, adds this property value
37
+ * to the return result list.
38
+ */
39
+ collectPropertiesFromPrecedingElements: function (startElement, propertyType) {
40
+ var visitedElements = [];
41
+ var collectedProperties = [];
42
+ EDITOR.UTIL._visitElementAndCollectProperty(startElement, propertyType, visitedElements, collectedProperties);
43
+ return collectedProperties;
44
+ },
45
+
46
+ /**
47
+ * Starts at the provided start element, and walks all preceding elements in the graph.
48
+ * Each element is tested to be a specific stencil id and, if it has, adds the element
49
+ * to the return result list.
50
+ */
51
+ collectElementsFromPrecedingElements: function (startElement, stencilId) {
52
+ var visitedElements = [];
53
+ var collectedElements = [];
54
+
55
+ var incomingShapesIterator = startElement.getIncomingShapes();
56
+ if (incomingShapesIterator) {
57
+ for (var i = 0; i < incomingShapesIterator.length; i++) {
58
+ var incomingShape = incomingShapesIterator[i];
59
+ if (visitedElements.indexOf(incomingShape.id) < 0) {
60
+ EDITOR.UTIL._visitElementAndCollectElement(incomingShape, stencilId, visitedElements, collectedElements);
61
+ }
62
+ }
63
+ }
64
+
65
+ return collectedElements;
66
+ },
67
+
68
+ _visitElementAndCollectProperty: function (element, propertyType, visitedElementsArray, collectedProperties) {
69
+
70
+ visitedElementsArray.push(element.id);
71
+
72
+ var property = element.properties[propertyType]
73
+ if (property) {
74
+ collectedProperties.push(property);
75
+ }
76
+
77
+ var incomingShapesIterator = element.getIncomingShapes();
78
+ if (incomingShapesIterator) {
79
+ for (var i = 0; i < incomingShapesIterator.length; i++) {
80
+ var incomingShape = incomingShapesIterator[i];
81
+ if (visitedElementsArray.indexOf(incomingShape.id) < 0) {
82
+ EDITOR.UTIL._visitElementAndCollectProperty(incomingShape, propertyType, visitedElementsArray, collectedProperties);
83
+ }
84
+ }
85
+ }
86
+ },
87
+
88
+ _visitElementAndCollectElement: function (element, stencilId, visitedElementsArray, collectedElements) {
89
+
90
+ visitedElementsArray.push(element.id);
91
+
92
+ var elementStencilId = element.getStencil().id();
93
+ if (elementStencilId && elementStencilId.indexOf(stencilId) >= 0) {
94
+ collectedElements.push(element);
95
+ }
96
+
97
+ var incomingShapesIterator = element.getIncomingShapes();
98
+ if (incomingShapesIterator) {
99
+ for (var i = 0; i < incomingShapesIterator.length; i++) {
100
+ var incomingShape = incomingShapesIterator[i];
101
+ if (visitedElementsArray.indexOf(incomingShape.id) < 0) {
102
+ EDITOR.UTIL._visitElementAndCollectElement(incomingShape, stencilId, visitedElementsArray, collectedElements);
103
+ }
104
+ }
105
+ }
106
+ },
107
+
108
+ /**
109
+ * Goes up the chain of parents of the provided element.
110
+ * When the property is encountered, its value is immediately returned.
111
+ * If the chain of parents is completely walked through, undefined is returned.
112
+ */
113
+ getPropertyFromParent: function (element, propertyType) {
114
+ if (element.parent) {
115
+ return EDITOR.UTIL._getPropertyFromParent(element.parent, propertyType);
116
+ } else {
117
+ return undefined;
118
+ }
119
+
120
+ },
121
+
122
+ _getPropertyFromParent: function (parentElement, propertyType) {
123
+ var property = parentElement.properties[propertyType];
124
+ if (property) {
125
+ return property;
126
+ }
127
+
128
+ if (parentElement.parent) {
129
+ return EDITOR.UTIL._getPropertyFromParent(parentElement.parent, propertyType);
130
+ } else {
131
+ return undefined;
132
+ }
133
+ }
134
+
135
+ };
@@ -0,0 +1,136 @@
1
+ <div ng-controller="StencilController">
2
+ <div class="subheader editor-toolbar" id="editor-header">
3
+ <div class="btn-group">
4
+ <div class="btn-toolbar pull-left" ng-controller="ToolbarController" ng-cloak>
5
+ <button id="{{item.id}}"
6
+ title="{{item.title | translate}}"
7
+ ng-repeat="item in items"
8
+ ng-switch on="item.type"
9
+ class="btn btn-inverse" ng-class="{'separator': item.type == 'separator'}"
10
+ ng-disabled="item.type == 'separator' || item.enabled == false"
11
+ ng-click="toolbarButtonClicked($index)">
12
+ <i ng-switch-when="button" ng-class="item.cssClass" class="toolbar-button" data-toggle="tooltip" title="{{item.title | translate}}"></i>
13
+ <div ng-switch-when="separator" ng-class="item.cssClass"></div>
14
+ </button>
15
+ </div>
16
+ </div>
17
+ <div class="btn-group pull-right" ng-show="!secondaryItems.length">
18
+ <div class="btn-toolbar pull-right" ng-controller="ToolbarController">
19
+ <button title="{{item.title | translate}}" ng-repeat="item in secondaryItems" ng-switch on="item.type" class="btn btn-inverse" ng-class="{'separator': item.type == 'separator'}"
20
+ ng-disabled="item.type == 'separator'" ng-click="toolbarSecondaryButtonClicked($index)" id="{{item.id}}">
21
+ <i ng-switch-when="button" ng-class="item.cssClass" class="toolbar-button" data-toggle="tooltip" title="{{item.title | translate}}"></i>
22
+ <div ng-switch-when="separator" ng-class="item.cssClass"></div>
23
+ </button>
24
+ </div>
25
+ </div>
26
+ </div>
27
+ <div class="full">
28
+ <div class="row row-no-gutter">
29
+ <div id="paletteHelpWrapper" class="col-xs-3">
30
+ <div class="stencils" id="paletteSection">
31
+ <div ng-if="stencilItemGroups.length > 1">
32
+ <div ng-repeat="group in stencilItemGroups">
33
+
34
+ <ul ng-if="group.visible && group.items" class="stencil-group" ng-class="{collapsed: !group.expanded, 'first': $first}">
35
+ <li ng-include="'editor-app/partials/stencil-item-template.html?version=4'"></li>
36
+ </ul>
37
+
38
+ <div ng-if="!group.items" ng-include="'editor-app/partials/root-stencil-item-template.html?version=4'"></div>
39
+
40
+ </div>
41
+ </div>
42
+ <div ng-if="stencilItemGroups.length == 1">
43
+ <ul class="stencil-group">
44
+ <li ng-repeat="item in stencilItemGroups[0].paletteItems" class="stencil-item"
45
+ id="{{item.id}}"
46
+ title="{{item.description}}"
47
+ ng-model="draggedElement"
48
+ data-drag="true"
49
+ jqyoui-draggable="{onStart:'startDragCallback', onDrag:'dragCallback'}"
50
+ data-jqyoui-options="{revert: 'invalid', helper: 'clone', opacity : 0.5}">
51
+
52
+ <img ng-src="editor-app/stencilsets/bpmn2.0/icons/{{item.icon}}" width="16px;" height="16px;"/>
53
+ {{item.name}}
54
+ </li>
55
+ </ul>
56
+ </div>
57
+ </div>
58
+ </div>
59
+ <div id="canvasHelpWrapper" class="col-xs-9">
60
+ <div class="canvas-wrapper" id="canvasSection"
61
+ ng-model="droppedElement"
62
+ ng-model="droppedElement"
63
+ data-drop="true"
64
+ data-jqyoui-options
65
+ jqyoui-droppable="{onDrop:'dropCallback',onOver: 'overCallback', onOut: 'outCallback'}">
66
+ <div class="canvas-message" id="model-modified-date"></div>
67
+ <div class="Oryx_button"
68
+ id="delete-button"
69
+ title="{{'BUTTON.ACTION.DELETE.TOOLTIP' | translate}}"
70
+ ng-click="deleteShape()"
71
+ style="display:none">
72
+ <img src="editor-app/images/delete.png"/>
73
+ </div>
74
+ <div class="Oryx_button"
75
+ id="morph-button"
76
+ title="{{'BUTTON.ACTION.MORPH.TOOLTIP' | translate}}"
77
+ ng-click="morphShape()"
78
+ style="display:none">
79
+ <img src="editor-app/images/wrench.png"/>
80
+ </div>
81
+ <div class="Oryx_button"
82
+ ng-repeat="item in quickMenuItems"
83
+ id="{{item.id}}"
84
+ title="{{item.description}}"
85
+ ng-click="quickAddItem(item.id)"
86
+ ng-model="draggedElement"
87
+ data-drag="true"
88
+ jqyoui-draggable="{onStart:'startDragCallbackQuickMenu', onDrag:'dragCallbackQuickMenu'}"
89
+ data-jqyoui-options="{revert: 'invalid', helper: 'clone', opacity : 0.5}"
90
+ style="display:none">
91
+ <img ng-src="editor-app/stencilsets/bpmn2.0/icons/{{item.icon}}"/>
92
+ </div>
93
+ </div>
94
+ </div>
95
+ <div id="propertiesHelpWrapper" class="col-xs-9">
96
+ <div class="propertySection" id="propertySection"
97
+ ng-class="{collapsed: propertyWindowState.collapsed}">
98
+ <div class="selected-item-section">
99
+ <div class="clearfix">
100
+ <div class="pull-right" ng-if="selectedItem.auditData.createDate">
101
+ <strong>{{'ELEMENT.DATE_CREATED' | translate}}: </strong> {{selectedItem.auditData.createDate}}
102
+ </div>
103
+ <div class="pull-right" ng-if="selectedItem.auditData.author">
104
+ <strong>{{'ELEMENT.AUTHOR' | translate}}: </strong> {{selectedItem.auditData.author}}
105
+ </div>
106
+ <div class="selected-item-title">
107
+ <a ng-click="propertyWindowState.toggle()">
108
+ <i class="glyphicon" ng-class="{'glyphicon-chevron-right': propertyWindowState.collapsed, 'glyphicon-chevron-down': !propertyWindowState.collapsed}"></i>
109
+ <span ng-show="selectedItem.title != undefined && selectedItem.title != null && selectedItem.title.length > 0">{{selectedItem.title}}</span>
110
+ <span ng-show="!selectedItem || selectedItem.title == undefined || selectedItem.title == null || selectedItem.title.length == 0">{{modelData.name}}</span>
111
+ </a>
112
+ </div>
113
+ </div>
114
+ <div class="selected-item-body">
115
+ <div>
116
+ <div class="property-row" ng-repeat="property in selectedItem.properties"
117
+ ng-click="propertyClicked($index)" ng-class="{'clear' : $index%2 == 0}">
118
+ <span class="title" ng-if="!property.hidden">{{ property.title }}&nbsp;:</span>
119
+ <span class="title-removed" ng-if="property.hidden"><i>{{ property.title }}&nbsp;({{'PROPERTY.REMOVED' | translate}})&nbsp;:</i></span>
120
+ <span class="value">
121
+ <ng-include
122
+ src="getPropertyTemplateUrl($index)" ng-if="!property.hasReadWriteMode"></ng-include>
123
+ <ng-include src="getPropertyReadModeTemplateUrl($index)"
124
+ ng-if="property.hasReadWriteMode && property.mode == 'read'"></ng-include>
125
+ <ng-include src="getPropertyWriteModeTemplateUrl($index)"
126
+ ng-if="property.hasReadWriteMode && property.mode == 'write'"></ng-include>
127
+ </span>
128
+ </div>
129
+ </div>
130
+ </div>
131
+ </div>
132
+ </div>
133
+ </div>
134
+ </div>
135
+ </div>
136
+ </div>
@@ -0,0 +1,133 @@
1
+ /*
2
+ * Activiti Modeler component part of the Activiti project
3
+ * Copyright 2005-2014 Alfresco Software, Ltd. All rights reserved.
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with this library; if not, write to the Free Software
17
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+ var KISBPM = KISBPM || {};
20
+
21
+ /** Inspired by https://github.com/krasimir/EventBus/blob/master/src/EventBus.js */
22
+ KISBPM.eventBus = {
23
+
24
+ /** Event fired when the editor is loaded and ready */
25
+ EVENT_TYPE_EDITOR_READY: 'event-type-editor-ready',
26
+
27
+ /** Event fired when a selection is made on the canvas. */
28
+ EVENT_TYPE_SELECTION_CHANGE: 'event-type-selection-change',
29
+
30
+ /** Event fired when a toolbar button has been clicked. */
31
+ EVENT_TYPE_TOOLBAR_BUTTON_CLICKED: 'event-type-toolbar-button-clicked',
32
+
33
+ /** Event fired when a stencil item is dropped on the canvas. */
34
+ EVENT_TYPE_ITEM_DROPPED: 'event-type-item-dropped',
35
+
36
+ /** Event fired when a property value is changed. */
37
+ EVENT_TYPE_PROPERTY_VALUE_CHANGED: 'event-type-property-value-changed',
38
+
39
+ /** Event fired on double click in canvas. */
40
+ EVENT_TYPE_DOUBLE_CLICK: 'event-type-double-click',
41
+
42
+ /** Event fired on a mouse out */
43
+ EVENT_TYPE_MOUSE_OUT: 'event-type-mouse-out',
44
+
45
+ /** Event fired on a mouse over */
46
+ EVENT_TYPE_MOUSE_OVER: 'event-type-mouse-over',
47
+
48
+ /** Event fired when a model is saved. */
49
+ EVENT_TYPE_MODEL_SAVED: 'event-type-model-saved',
50
+
51
+ /** Event fired when the quick menu buttons should be hidden. */
52
+ EVENT_TYPE_HIDE_SHAPE_BUTTONS: 'event-type-hide-shape-buttons',
53
+
54
+ /** A mapping for storing the listeners*/
55
+ listeners: {},
56
+
57
+ /** The Oryx editor, which is stored locally to send events to */
58
+ editor: null,
59
+
60
+ /**
61
+ * Add an event listener to the event bus, listening to the event with the provided type.
62
+ * Type and callback are mandatory parameters.
63
+ *
64
+ * Provide scope parameter if it is important that the callback is executed
65
+ * within a specific scope.
66
+ */
67
+ addListener: function (type, callback, scope) {
68
+
69
+ // Add to the listeners map
70
+ if (typeof this.listeners[type] !== "undefined") {
71
+ this.listeners[type].push({scope: scope, callback: callback});
72
+ } else {
73
+ this.listeners[type] = [
74
+ {scope: scope, callback: callback}
75
+ ];
76
+ }
77
+ },
78
+
79
+ /**
80
+ * Removes the provided event listener.
81
+ */
82
+ removeListener: function (type, callback, scope) {
83
+ if (typeof this.listeners[type] != "undefined") {
84
+ var numOfCallbacks = this.listeners[type].length;
85
+ var newArray = [];
86
+ for (var i = 0; i < numOfCallbacks; i++) {
87
+ var listener = this.listeners[type][i];
88
+ if (listener.scope === scope && listener.callback === callback) {
89
+ // Do nothing, this is the listener and doesn't need to survive
90
+ } else {
91
+ newArray.push(listener);
92
+ }
93
+ }
94
+ this.listeners[type] = newArray;
95
+ }
96
+ },
97
+
98
+ hasListener:function(type, callback, scope) {
99
+ if(typeof this.listeners[type] != "undefined") {
100
+ var numOfCallbacks = this.listeners[type].length;
101
+ if(callback === undefined && scope === undefined){
102
+ return numOfCallbacks > 0;
103
+ }
104
+ for(var i=0; i<numOfCallbacks; i++) {
105
+ var listener = this.listeners[type][i];
106
+ if(listener.scope == scope && listener.callback == callback) {
107
+ return true;
108
+ }
109
+ }
110
+ }
111
+ return false;
112
+ },
113
+
114
+ /**
115
+ * Dispatch an event to all event listeners registered to that specific type.
116
+ */
117
+ dispatch:function(type, event) {
118
+ if(typeof this.listeners[type] != "undefined") {
119
+ var numOfCallbacks = this.listeners[type].length;
120
+ for(var i=0; i<numOfCallbacks; i++) {
121
+ var listener = this.listeners[type][i];
122
+ if(listener && listener.callback) {
123
+ listener.callback.apply(listener.scope, [event]);
124
+ }
125
+ }
126
+ }
127
+ },
128
+
129
+ dispatchOryxEvent: function(event, uiObject) {
130
+ KISBPM.eventBus.editor.handleEvents(event, uiObject);
131
+ }
132
+
133
+ };
@@ -0,0 +1,43 @@
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
3
+ <svg xmlns="http://www.w3.org/2000/svg">
4
+ <metadata></metadata>
5
+ <defs>
6
+ <font id="activitimodelerregular" horiz-adv-x="2048" >
7
+ <font-face units-per-em="2048" ascent="1638" descent="-410" />
8
+ <missing-glyph horiz-adv-x="500" />
9
+ <glyph horiz-adv-x="0" />
10
+ <glyph unicode="&#xd;" />
11
+ <glyph unicode="a" d="M0 128q0 -34 23 -57t57 -23h1840q22 0 40 11t29 29t11 40v760v640q0 14 -7 31t-17 27l-440 440q-10 8 -26 15t-30 7h-1400h-1h-3h-4q-30 -2 -51 -26t-21 -54v-1840zM160 208v1680h160v-520q0 -32 16 -60t44 -44t60 -16h800q32 0 60 16t44 44t16 60v520h88l392 -392v-608 v-680h-160v600q0 34 -23 57t-57 23h-1200h-4h-4q-30 -2 -51 -26t-21 -54v-600h-160zM480 208v520h1040v-520h-1040zM960 1448v400q0 16 12 28t28 12h160q16 0 28 -12t12 -28v-400q0 -10 -5 -20t-15 -15t-20 -5h-160q-10 0 -20 5t-15 15t-5 20z" />
12
+ <glyph unicode="b" d="M80 128l522 264l-258 258zM472 780l260 -260l914 916l-258 258zM1518 1828l262 -262l62 66q28 28 28 65t-28 65l-128 128q-10 10 -21 16t-23 9t-24 3q-34 0 -62 -28z" />
13
+ <glyph unicode="c" d="M41 1513q11 -69 55 -135q82 -126 244 -205q138 -67 267 -67q23 0 45 2q70 6 128 36q22 -8 41 -15l38 -14t35 -13t26 -10q0 -2 1 -8t1 -8v-14v-16v-2v-10v-12v-10l-1 -6t-1 -8q-14 -6 -34 -14t-56 -20t-52 -18q-56 28 -126 34q-24 3 -48 3q-51 0 -105 -12 q-79 -17 -159 -55q-162 -78 -244 -204q-60 -91 -60 -175q0 -53 24 -103q32 -64 96 -100t144 -44q23 -2 46 -2q130 0 266 66q160 78 244 206q59 89 59 171q0 44 -17 87q28 26 49 45t35 33q458 -296 826 -486q26 -14 54 -4t49 25t37 33q24 30 27 73v8q0 38 -25 69 q-232 200 -542 430q146 106 280 214t262 216q14 16 21 37q5 16 5 32v9q-2 20 -10 39t-18 33q-54 63 -108 63l-12 -1q-8 0 -20 -6q-368 -190 -826 -486q-10 8 -24 22t-28 26t-32 28q16 40 16 81v9q-2 46 -16 88t-42 82q-84 128 -244 206q-136 66 -266 66h-8t-38 -4 q-80 -6 -144 -42t-96 -102q-22 -53 -22 -104q0 -18 3 -37zM233 1535q-2 10 -2 17q0 12 5 18q2 2 5 6t7 8t9 7t12 6t14 5t17 4t22 4q13 1 25 1q87 0 183 -47q112 -52 164 -132q27 -41 27 -71q0 -13 -5 -23q-8 -14 -28 -26t-58 -14q-15 -2 -30 -1q-83 0 -178 45 q-110 54 -164 136q-20 32 -25 57zM236 518q-5 11 -5 23q0 30 27 71q54 80 164 134q82 40 164 46q24 2 44 0q38 -4 58 -15t28 -25q2 -8 3 -16t0 -20t-7 -27t-18 -31q-52 -80 -164 -134q-93 -46 -177 -45q-16 0 -31 1q-70 6 -86 38zM1074 1056q0 28 20 48t48 20t48 -20t20 -48 q0 -18 -9 -34t-25 -25t-34 -9q-28 0 -48 20t-20 48z" />
14
+ <glyph unicode="d" d="M80 668q0 -40 30 -70t70 -30h638v-340q0 -26 14 -49t37 -37t49 -14h902q40 0 70 30t30 70v1200q0 40 -30 70t-70 30h-462q-16 0 -32 -8q-10 -6 -12 -8q-6 -4 -22 -18q-18 -16 -58 -54q-8 -6 -27 -25l-25 -25v478q0 40 -30 70t-70 30h-462q-18 0 -32 -8q-10 -6 -12 -8 q-6 -4 -22 -18q-18 -16 -58 -54q-84 -78 -168 -160q-82 -82 -160 -166q-40 -42 -54 -60q-14 -14 -18 -22q-4 -6 -8 -10q-8 -16 -8 -34v-760zM200 688v660h420h80v500h362v-576q-80 -78 -154 -158q-40 -42 -56 -60q-12 -14 -16 -22q-6 -6 -8 -10q-10 -16 -10 -34v-300h-618z M252 1468l2 2v2q60 62 160 162t162 158l2 2l2 2v-328h-328zM938 248v660h420h80v500h362v-1160h-862zM990 1028l1 1l3 3q58 62 158 162t162 158l2 2l2 2v-328h-328z" />
15
+ <glyph unicode="e" d="M80 528q0 -50 35 -85t85 -35h618v-180q0 -26 14 -49t37 -37t49 -14h902q40 0 70 30t30 70v1200q0 40 -30 70t-70 30h-380v320q0 50 -35 85t-85 35h-1120q-50 0 -85 -35t-35 -85v-1320zM360 1768v40q0 16 12 28t28 12h720q16 0 28 -12t12 -28v-40q0 -16 -12 -28t-28 -12 h-720q-16 0 -28 12t-12 28zM938 248v660h420h80v500h362v-1160h-862zM990 1028l1 1l3 3q58 62 158 162t162 158l2 2l2 2v-328h-328z" />
16
+ <glyph unicode="f" d="M280 1518q0 -10 5 -20t15 -15t20 -5h80v-1026q0 -72 49 -123t119 -51h864q70 0 119 51t49 123v1026h80q16 0 28 12t12 28v40q0 10 -5 20t-15 15t-20 5h-276q0 2 -2 2l-200 200q-6 8 -19 13t-23 5h-320h-4h-2q-22 -2 -36 -18l-200 -200q-2 0 -2 -2h-276q-10 0 -20 -5 t-15 -15t-5 -20v-40zM520 452v1026h960v-1026q0 -24 -14 -39t-34 -15h-864q-10 0 -19 4t-15 11t-10 17t-4 22zM640 618q0 -24 18 -42t42 -18h40q24 0 42 18t18 42v640q0 24 -18 42t-42 18h-40q-24 0 -42 -18t-18 -42v-640zM764 1598l100 100h272l100 -100h-472zM920 618 q0 -24 18 -42t42 -18h40q24 0 42 18t18 42v640q0 24 -18 42t-42 18h-40q-24 0 -42 -18t-18 -42v-640zM1200 618q0 -24 18 -42t42 -18h40q24 0 42 18t18 42v640q0 24 -18 42t-42 18h-40q-24 0 -42 -18t-18 -42v-640z" />
17
+ <glyph unicode="g" d="M240 1188q0 -24 18 -42t42 -18h442q40 0 54 36q6 14 6 26q0 22 -18 40l-144 144q92 108 230 152q74 24 149 24q65 0 131 -18q202 -54 305 -233q68 -117 68 -244q0 -67 -19 -136q-54 -201 -233 -305q-118 -68 -245 -68q-66 0 -134 18q-128 34 -224 130l-172 -168 q142 -142 334 -192q96 -26 192 -26t191 26q191 52 331 191t192 333q24 100 24 199q0 17 -1 35q-5 116 -49 224t-113 196t-169 154t-216 98q-94 24 -192 24h-28q-150 -6 -285 -70t-235 -174l-130 130q-20 20 -48 16q-22 -2 -38 -20t-16 -40v-442z" />
18
+ <glyph unicode="h" d="M264 857q-26 96 -26 192.5t26 191.5q52 191 191 331t333 192q18 4 37 8t37 7t37 5t37 3t36 1h36q150 -6 285 -70t235 -174l130 130q20 20 48 16q22 -2 38 -20t16 -40v-442q0 -24 -18 -42t-42 -18h-442q-40 0 -54 36q-6 14 -6 26q0 22 18 40l144 144q-92 108 -230 152 q-74 24 -149 24q-65 0 -131 -18q-202 -54 -305 -233q-68 -117 -68 -244q0 -67 19 -136q54 -201 233 -305q118 -68 245 -68q66 0 134 18q128 34 224 130l172 -168q-142 -142 -334 -192q-96 -26 -192 -26t-191 26q-191 52 -331 191t-192 332z" />
19
+ <glyph unicode="i" d="M80 1344q0 -56 40 -96t96 -40h184l-40 120h-144q-16 0 -16 16v264v186q0 14 16 14h104h344q16 0 16 -14v-190l120 -36v226q0 54 -40 94t-96 40h-448q-56 0 -96 -40t-40 -94v-450zM412 1522l106 -356q4 -16 23 -19t29 9l68 94l156 -156q18 -18 42 -18t40 16l6 8 q16 16 16 40t-18 40l-156 156l92 66q12 10 9 29t-19 23l-356 106h-8h-6q-14 -2 -21 -14q-4 -8 -4 -15q0 -5 1 -9zM1063 931q-1 -6 -1 -13q0 -9 2 -17q4 -15 16 -25l156 -156l-92 -66q-12 -10 -9 -29t19 -23l356 -106h4h4h6q14 2 21 14t3 24l-106 356q-4 16 -23 19t-29 -9 l-68 -94l-156 156q-18 18 -42 18h-5q-21 0 -35 -16l-6 -8q-12 -10 -15 -25zM1160 264q0 -56 40 -96t96 -40h448q56 0 96 40t40 96v448q0 36 -18 68t-49 50t-69 18h-184l40 -120h144q16 0 16 -16v-264v-184q0 -16 -16 -16h-104h-344q-16 0 -16 16v188l-120 36v-224z" />
20
+ <glyph unicode="j" d="M120 306q0 -56 41 -97t97 -41h1484q38 0 70 19t50 51t18 68v1484q0 58 -40 98t-98 40h-1484q-58 0 -98 -40t-40 -98v-1484zM240 306v1484q0 18 18 18h1484q18 0 18 -18v-1484q0 -18 -18 -18h-1484q-18 0 -18 18zM322 1676l140 -480q6 -22 32 -26t40 14l90 126l162 -162 q16 -16 36 -21t40 -1t36 20l8 8q22 22 22 54t-24 56l-162 162l122 88q18 14 14 40t-26 32l-480 140q-8 4 -11 4t-9 -2q-18 -4 -27 -20q-5 -10 -5 -19q0 -7 2 -13zM1098 830l162 -162l-122 -88q-18 -12 -14 -38t24 -32l482 -142q7 -3 13 -3l7 1q16 4 26 20q6 10 6 20 q0 6 -2 12l-142 480q-6 22 -32 26t-38 -14l-90 -126l-164 162q-22 24 -55 25h-3q-31 0 -52 -21l-10 -10q-21 -21 -21 -51q0 -34 25 -59z" />
21
+ <glyph unicode="k" d="M120 1148q0 -200 99 -370t269 -269t370 -99q230 0 420 132l6 -6l208 -208l112 -112q20 -20 54 -34t62 -14q66 0 113 47t47 113q0 28 -14 61t-34 53l-114 112l-206 208q-8 8 -16 14q102 172 102 372q0 150 -59 287t-158 236t-236 157t-287 58t-286 -58t-235 -157 t-158 -236t-59 -287zM358 1148q0 208 146 355t354 147q138 0 253 -67t182 -183t67 -252q0 -208 -147 -355t-355 -147t-354 147t-146 355zM518 1088q0 -16 12 -28t28 -12h200v-200q0 -16 12 -28t28 -12h120q18 0 29 12t11 28v200h200q18 0 29 12t11 28v120q0 16 -11 28 t-29 12h-200v200q0 16 -11 28t-29 12h-120q-16 0 -28 -12t-12 -28v-200h-200q-16 0 -28 -12t-12 -28v-120z" />
22
+ <glyph unicode="l" d="M120 1148q0 -200 99 -370t269 -269t370 -99q230 0 420 132l6 -6l208 -208l112 -112q48 -48 114 -48t114 46q22 22 35 52t13 62q0 66 -48 114l-114 112l-206 208q-8 8 -16 14q102 172 102 372q0 150 -59 287t-158 236t-236 157t-287 58t-286 -58t-235 -157t-158 -236 t-59 -287zM358 1148q0 208 146 355t354 147q138 0 253 -67t182 -183t67 -252q0 -208 -147 -355t-355 -147t-354 147t-146 355zM518 1088q0 -16 12 -28t28 -12h600q18 0 29 12t11 28v120q0 16 -11 28t-29 12h-600q-16 0 -28 -12t-12 -28v-120z" />
23
+ <glyph unicode="m" d="M120 1146q0 -200 99 -370t269 -269t370 -99q230 0 420 132l6 -6l208 -208l112 -112q46 -46 115 -46t114 44t45 113t-46 115l-114 112l-206 208q-8 6 -16 14q102 172 102 372t-99 370t-269 269t-371 99t-371 -99t-269 -269t-99 -370zM358 1146q0 208 146 355t354 147 q138 0 253 -67t182 -183t67 -252q0 -208 -147 -355t-355 -147t-354 147t-146 355zM638 1246q142 22 192 44h8v-524h160v760h-160q-10 -54 -38 -87t-67 -48t-95 -21v-124z" />
24
+ <glyph unicode="n" d="M200 510q0 -108 77 -185t184 -77t184 77t77 185q0 26 -5 51t-15 48t-24 44t-31 39t-39 32l72 406h2q98 0 168 69t72 167l386 108q16 -32 41 -59t54 -46t65 -30t74 -11q106 0 183 77t77 184t-77 184t-183 77q-64 0 -120 -29t-92 -79t-46 -112l-414 -114q-72 94 -188 94 q-100 0 -170 -71t-70 -169q0 -112 86 -184l-74 -416q-52 -2 -99 -23t-81 -56t-54 -83t-20 -98zM362 510q0 42 29 70t71 28t70 -28t28 -70t-28 -71t-70 -29t-71 29t-29 71zM992 658q0 -20 14 -34t36 -14h240v-252q0 -20 14 -34t34 -14h142q14 0 25 6t18 17t7 25v252h240 q20 0 34 14t14 34v142q0 20 -14 35t-34 15h-240v244q0 20 -15 35t-35 15h-142q-20 0 -34 -15t-14 -35v-244h-240q-22 0 -36 -15t-14 -35v-142zM1442 1589q0 27 13 50t36 36t50 13t50 -13t36 -36t13 -50t-13 -50t-36 -36t-50 -13t-50 13t-36 36t-13 50z" />
25
+ <glyph unicode="o" d="M200 510q0 -108 77 -185t184 -77t184 77t77 185q0 26 -5 51t-15 48t-24 44t-31 39t-39 32l72 406h2q98 0 168 69t72 167l386 108q16 -32 41 -59t54 -46t65 -30t74 -11q106 0 183 77t77 184t-77 184t-183 77q-64 0 -120 -29t-92 -79t-46 -112l-414 -114q-72 94 -188 94 q-100 0 -170 -71t-70 -169q0 -112 86 -184l-74 -416q-52 -2 -99 -23t-81 -56t-54 -83t-20 -98zM362 510q0 42 29 70t71 28t70 -28t28 -70t-28 -71t-70 -29t-71 29t-29 71zM992 658q0 -20 14 -34t36 -14h720q20 0 34 14t14 34v142q0 20 -14 35t-34 15h-720q-22 0 -36 -15 t-14 -35v-142zM1442 1589q0 27 13 50t36 36t50 13t50 -13t36 -36t13 -50t-13 -50t-36 -36t-50 -13t-50 13t-36 36t-13 50z" />
26
+ <glyph unicode="p" d="M200 1008q0 -16 12 -28t28 -12h160v-240q0 -34 23 -57t57 -23h240q34 0 57 23t23 57v240h240v-520q0 -66 47 -113t113 -47h240q66 0 113 47t47 113v520h160q16 0 28 12t12 28v80q0 16 -12 28t-28 12h-160v520q0 66 -47 113t-113 47h-240q-66 0 -113 -47t-47 -113v-520 h-240v240q0 34 -23 57t-57 23h-240q-34 0 -57 -23t-23 -57v-240h-160q-16 0 -28 -12t-12 -28v-80zM1200 448v1200h240v-1200h-240z" />
27
+ <glyph unicode="q" d="M240 608q0 -66 47 -113t113 -47h520v-160q0 -16 12 -28t28 -12h80q16 0 28 12t12 28v160h520q66 0 113 47t47 113v240q0 66 -47 113t-113 47h-520v240h240q34 0 57 23t23 57v240q0 34 -23 57t-57 23h-240v160q0 16 -12 28t-28 12h-80q-16 0 -28 -12t-12 -28v-160h-240 q-34 0 -57 -23t-23 -57v-240q0 -34 23 -57t57 -23h240v-240h-520q-66 0 -113 -47t-47 -113v-240zM400 608v240h1200v-240h-1200z" />
28
+ <glyph unicode="&#x2000;" horiz-adv-x="1024" />
29
+ <glyph unicode="&#x2001;" />
30
+ <glyph unicode="&#x2002;" horiz-adv-x="1024" />
31
+ <glyph unicode="&#x2003;" />
32
+ <glyph unicode="&#x2004;" horiz-adv-x="682" />
33
+ <glyph unicode="&#x2005;" horiz-adv-x="512" />
34
+ <glyph unicode="&#x2006;" horiz-adv-x="341" />
35
+ <glyph unicode="&#x2007;" horiz-adv-x="341" />
36
+ <glyph unicode="&#x2008;" horiz-adv-x="256" />
37
+ <glyph unicode="&#x2009;" horiz-adv-x="409" />
38
+ <glyph unicode="&#x200a;" horiz-adv-x="113" />
39
+ <glyph unicode="&#x202f;" horiz-adv-x="409" />
40
+ <glyph unicode="&#x205f;" horiz-adv-x="512" />
41
+ <glyph unicode="&#x25fc;" horiz-adv-x="1000" d="M0 0z" />
42
+ </font>
43
+ </defs></svg>