Commit Graph

202 Commits

Author SHA1 Message Date
Nico Rehwaldt 4f6d57accf fix(Viewer): freakin fix SVG export performance
From /.*<svg[^>]*>|<\/svg>.*$/g to /^.*<svg[^>]*>|<\/svg>.*$/g, spot the
   difference.
2014-08-06 15:22:06 +02:00
Nico Rehwaldt 782329f896 fix(modeler): add modeling components last 2014-08-06 14:40:34 +02:00
Nico Rehwaldt fb86037cdd fix(modeling): properly update sourceRef/targetRef for associations
Related to #90
2014-08-05 17:57:19 +02:00
Nico Rehwaldt a8d51a849d fix(modeling): add missing $inject 2014-08-05 17:35:54 +02:00
jdotzki c67709ce34 feat(modeling): allow append TextAnnotation
Closes #90
2014-08-05 17:21:49 +02:00
Nico Rehwaldt 8116941fca test(overlays): add overlay support tests
Related to #54
2014-08-05 17:02:03 +02:00
Nico Rehwaldt c21b295ec2 feat(Viewer): fire <import.*> events 2014-08-05 08:34:54 +02:00
Nico Rehwaldt 4a824911c2 feat(modeling): validate + create unique ids
This adds id logging + validation to the Modeler. As a result the
modeler will throw hard exeptions on colliding id mappings and may
generated unique ids.

Related to bpmn-io/bpmn-js#92
2014-08-04 16:34:37 +02:00
Nico Rehwaldt 925fbc98b8 chore(project): pull bpmn-moddle changes 2014-08-04 16:32:11 +02:00
Nico Rehwaldt 9e2ad175df chore(label-editing): integrate into modeling 2014-08-04 09:34:46 +02:00
Nico Rehwaldt b1663db035 fix(modeling): correct initial label positioning 2014-08-04 09:34:45 +02:00
Nico Rehwaldt 11f166a7f9 fix(modeling): update di bounds during shape.create 2014-08-04 09:34:44 +02:00
Nico Rehwaldt 4af334259c fix(context-pad): create ExclusiveGateway 2014-08-04 09:34:43 +02:00
Nico Rehwaldt 6183fc2561 chore(modeling): clean unused import 2014-08-04 09:32:49 +02:00
Nico Rehwaldt fe24a098fd feat(modeler): enable move feature 2014-08-04 09:32:48 +02:00
Nico Rehwaldt 209a86dc71 fix(modeling): correct size for gateways 2014-08-04 09:32:48 +02:00
jdotzki 9a19927a97 feat(context pad): add intermediate throw event to context pad
close #89
2014-08-01 16:21:16 +02:00
jdotzki 05bec1f3f8 improve(overlays): add 'diagram-js/lib/features/overlays' as standard module
related to bpmn-io/bpmn-js-examples#1
2014-08-01 11:40:18 +02:00
Nico Rehwaldt 72729ce248 fix(modeling/BpmnFactory): do not serialize point#original 2014-08-01 08:32:56 +02:00
Nico Rehwaldt cb77832fbe feat(viewer): allow additional modules to be passed
This enables users to instantiate Viewers/Modelers via

```
new Viewer({
additionalModules: [ ... ]
});
```

to bootstrap their own modules with the viewer without overriding the
existing ones.
2014-08-01 07:55:47 +02:00
Nico Rehwaldt e337ffe246 chore(Viewer): remove failSafeUtil 2014-08-01 07:47:36 +02:00
Nico Rehwaldt 44d2d94ed2 fix(modeling): create di before rendering 2014-07-31 16:26:06 +02:00
Nico Rehwaldt 4afe3a80ed feat(modeling): crop connections on shape boundaries
Behind the scenes changes:

* use diagram-js Matcher util in tests
* add test cases for LayoutConnection
* add test cases for CreateConnection
* cleanup unused test diagram

Related to #2
2014-07-31 16:26:05 +02:00
Nico Rehwaldt 7347e484ba chore(command): pull diagram-js changes 2014-07-31 15:58:31 +02:00
Nico Rehwaldt bc61e6c3ed feat(features/modeling): implement BPMN update for shape+label move
Related to #2
2014-07-31 15:58:28 +02:00
Nico Rehwaldt 9456ca9098 feat(features/modeling): assign default size for elements 2014-07-31 15:57:15 +02:00
Nico Rehwaldt d729818b94 feat(features/modeling): implement bpmn update as command listeners
This commit adds

* handling of bpmn update as command listeners
* label support

Related to bpmn-io/diagram-js#45

BREAKING CHANGE:

* rename bpmnModeling -> modeling to achive parity with diagram-js
2014-07-31 15:56:15 +02:00
jdotzki e1ed479314 feat(modeling): model gateways in processes
- Gateways can added via context pad
- BpmnModelingSpec.js split up into several files

See #88
2014-07-31 14:03:33 +02:00
Nico Rehwaldt 2934e2bfc9 fix(draw): render data-association-markers 2014-07-24 11:03:10 +02:00
Nico Rehwaldt ec83cc67d9 feat(import): deferred import connections 2014-07-23 18:53:04 +02:00
Nico Rehwaldt f02b741c85 feat(features/context-pad): focus elements after append 2014-07-18 15:29:41 +02:00
Nico Rehwaldt 1947a9c4de fix(features/bpmn-modeling): correctly remove flow from outgoing/incoming
Related to #6
2014-07-18 15:10:33 +02:00
Nico Rehwaldt f1b023f419 fix(features/bpmn-modeling): reuse created elements during redo
This commit fixes the append node command by caching and reusing created
shapes and bpmn elements.

This ensures we do not invalidate actions that build on these element
references.

Related to #6
2014-07-18 14:39:15 +02:00
Nico Rehwaldt 0bb2f9c1ed fix(features/context-pad): remove dangling fs 2014-07-18 08:52:47 +02:00
Nico Rehwaldt 894280e723 feat(feature/bpmn-modeling): append task via context-pad
Related to #6, #40
2014-07-17 15:29:34 +02:00
Nico Rehwaldt 4fe5bbc0f5 feat(features/bpmn-modeling): implement appendNode
Related to #6
2014-07-17 14:11:28 +02:00
Nico Rehwaldt 5185c55f68 chore(features/label-editing): directly depend on cmd
Related to bpmn-io/diagram-js#41
2014-07-17 14:08:15 +02:00
Nico Rehwaldt f380a4b044 feat(lib/core): use directly linked data-model
Closes #91
2014-07-17 14:08:15 +02:00
Nico Rehwaldt ae60914146 fix(import): handle invisible root elements
This commit ensures we pipe invisible root elements (Process,
Collaboration) through our import infrastructure, too.

This way we we receive proper events for them.

Related to #6
2014-07-17 14:06:29 +02:00
Nico Rehwaldt 921de712d2 chore(import): factor out import logic to own component
This commit extracts the main import logic found in import/Importer into
the core/BpmnImporter module. By doing so we we are able to reuse it
during modeling.

Related to #6
2014-07-17 14:06:29 +02:00
Nico Rehwaldt 4fb8a04251 Merge branch 'tap' 2014-07-17 13:22:46 +02:00
jdotzki 7e73e9d7c9 feat(features/label-editing): add touch based editing
Closes #84
2014-07-17 13:20:59 +02:00
jdotzki 551b445837 feat(bpmntreewalker): improve 'boundary event' handling
- correct z-index of boundary event close #75
- also render 'boundary events' that have no flowNodeRef close #66
2014-07-15 12:43:30 +02:00
jdotzki a5668bfac7 refactor(zoomscroll): use layerX/Y instead more sophisticated solution.
As long as we use a container with relative positioning this should work.

close #83
2014-07-09 16:35:57 +02:00
jdotzki 75402fe277 fix(zoomscroll): fix using of incorrect offsetX/Y values for zoom on Gecko Browsers
close #83
2014-07-09 15:08:19 +02:00
jdotzki 9d178b23f2 feat(bpmnrenderer): render X-OR marker only if 'isMarkerVisible' is set
close #69
2014-07-09 10:04:21 +02:00
Nico Rehwaldt 1aa431ca36 feat(Viewer): improve BPMN 2.0 XML parse error message
Related to #86
2014-06-30 19:04:40 +02:00
Nico Rehwaldt 88c5dcbb2f chore(core): swap draw dependency
Make bpmn-js/draw depend on bpmn-js/core and not vice versa
2014-06-30 17:09:39 +02:00
Nico Rehwaldt f386443f1a chore(Modeler): add touch feature 2014-06-27 14:24:57 +02:00
jdotzki 3c7033f92e feat(features/touch): add touch gesture support
Allow to navigate i.e. scroll/zoom on the diagram via touch gestures.

Closes #46
2014-06-27 14:24:29 +02:00
Nico Rehwaldt 27b39a9d44 feat(modeler): add createDiagram API
Related to #4
2014-06-24 15:50:51 +02:00
Nico Rehwaldt 17329666f9 fix(LabelEditingProvider): work around old WebKit incompatibility 2014-06-24 15:34:57 +02:00
Nico Rehwaldt 8ad29d034d fix(import): forgive invalid flowElements
Instead of failing hard when we parse invalid flow elements (i.e.
TextAnnotation) we log a warning that may be handled by the diagram
import.

Related to #74
2014-06-23 14:44:03 +02:00
Nico Rehwaldt 46c0744609 fix(viewer): reintroduce selection
Related to #7
2014-06-19 09:56:32 +02:00
Nico Rehwaldt c7da579f83 fix(import/Importer): clear commandStack after import 2014-06-19 09:56:31 +02:00
Nico Rehwaldt 84510cc45d feat(label-editing): edit all labels
Related to #7
2014-06-17 11:53:07 +02:00
Nico Rehwaldt 4e7e574438 chore(util): introduce Di utility 2014-06-17 11:48:23 +02:00
Nico Rehwaldt e947cb8bbe chore(modeler/viewer): clean up module loading + api 2014-06-17 11:20:36 +02:00
Nico Rehwaldt d4e55f0ba3 fix(import): hide labels of hidden elements
Closes #78
2014-06-17 11:18:33 +02:00
Nico Rehwaldt d41cad1b67 fix(importer): import label on messageFlows
Closes #76
2014-06-17 11:03:03 +02:00
Nico Rehwaldt 42b14c97e2 feat(bower): use exposify to build bower bundle
This commit uses exposify to perform a quick replace on web dependency
require() statements before browserify can process them.

This way we access our external dependencies (jquery, lodash, snapsvg,
sax) via window globals in a standalone bower bundle.

Closes #63
2014-06-13 16:55:31 +02:00
Nico Rehwaldt 73fbeb3d27 feat(modeler): add label editing
Related to #7
2014-06-11 15:08:45 +02:00
Nico Rehwaldt 4e00114409 chore(project): upgrade to new diagram.js module structure 2014-06-11 14:41:55 +02:00
Nico Rehwaldt 04fdb3d049 chore(project): add index.js entry point 2014-06-11 14:36:26 +02:00
Nico Rehwaldt bd70eced41 fix(BpmnRenderer): fix cross browser/svg viewer marker
This hacks around marker behaviors in Safari+PhantomJS. By setting the
stroke dash array to bigger than the path length, the line is drawn
solid.

Related to #68
2014-06-02 15:37:14 +02:00
Nico Rehwaldt 0a619a53fd fix(BpmnRenderer): minor drawing improvements
This fix contributes these improvements

* reset strokeWidth back to 1px for boundary + intermediate events
* unify strokeDasharray for initiating start + cancelActivity boundary
events
* set dataObject fill to white
2014-05-28 23:19:41 +02:00
Nico Rehwaldt 281de42998 feat(BpmnRenderer): clean up flow markers
This fixes flow marker strokeDasharray being used on non browser SVG
viewers.
2014-05-28 22:49:35 +02:00
jdotzki 97d1adeb8c fix(bpmnrenderer): set fill color of data associations to 'none'
close #68
2014-05-28 18:27:56 +02:00
Nico Rehwaldt 698167783b fix(svg-export): correctly serialize svg 1.1
Closes #68
2014-05-28 12:19:35 +02:00
Nico Rehwaldt 14850f753f fix(BpmnRenderer): fix messageflow marker positioning 2014-05-27 18:54:24 +02:00
Nico Rehwaldt ba94724225 fix(BpmnRenderer): adjust sequenceFlow strokeWidth + cleanup
Closes #70
2014-05-27 18:48:38 +02:00
Nico Rehwaldt 645d0e8ea4 fix(BpmnRenderer): correctly draw boundaryEvent#cancelActivity
Closes #71
2014-05-27 17:51:16 +02:00
jdotzki 9bfa4de445 fix(bpmnrenderer): render conditional flow marker only on task
close #67
2014-05-27 12:25:28 +02:00
Nico Rehwaldt 027c4278fd chore(viewer): remove brfs dependency
This commit removes the build dependency on brfs by inlining the bpmn-js
logo directly into the source code.

Because of that users have an easier time integrating the library.
2014-05-26 09:15:07 +02:00
jdotzki fd9fcefeb4 fix(bpmnrenderer): fix marker paths
The path format for some marker was incorrect, fixed for all SVG viewer that fails.
2014-05-26 08:59:12 +02:00
jdotzki 1342c1aca0 fix(bpmnrenderer): conditional flow marker
Sequence flows are rendered as a <path> instead as <polyline> so that the start and end markers have the correct orientation in Gecko based browsers.
2014-05-25 12:32:24 +02:00
Nico Rehwaldt 4b135fd9e7 fix(importer): show better error if no BPMNPlane#bpmnElement
Closes #40
2014-05-23 16:31:28 +02:00
Nico Rehwaldt 0b0fa40bc5 chore(bpmn-renderer): remove log statements 2014-05-23 10:59:00 +02:00
Nico Rehwaldt 6dee60e2ab fix(svg-export): workaround safari incompatiblity 2014-05-23 10:58:44 +02:00
Nico Rehwaldt 1733bc6de9 fix(Importer): collapse subProcesses only
Related to #49
2014-05-22 10:51:40 +02:00
jdotzki 57a9f49e52 impr(bpmnrenderer): event type inspection 2014-05-22 08:40:00 +02:00
Nico Rehwaldt 19bf425efa feat(Import): hide child elements in collapsed parents
Closes #49
2014-05-21 16:30:17 +02:00
jdotzki b0e6020952 impr(bpmnrenderer): make lanes transparent
Relates to #28
2014-05-21 15:35:26 +02:00
jdotzki d18089db0a feat(bpmnrenderer): add rendering of message marker on message flows
The marker will be placed in the middle of the message flow.

close #23
2014-05-21 13:51:59 +02:00
jdotzki 738a8a64f6 feat(bpmnrenderer): add default flow markers
close #29
2014-05-19 16:22:55 +02:00
jdotzki b2f2f1a29c feat(bpmnrenderer): add collection marker to pools
Collapsed pools looks ok. Expanded Pools have issues with z-index.
2014-05-18 12:23:17 +02:00
jdotzki 8370886bc2 feat(bpmnrenderer): add conditional flow markers
See #29
2014-05-17 10:54:56 +02:00
jdotzki fd03c02612 fix(bpmnrenderer): 'multiple parallel' event was rendered as 'multiple' event 2014-05-15 10:23:48 +02:00
jdotzki 7cdf82cce1 impr(bpmnrenderer): set correct outline for non interrupting start events
#31
2014-05-15 10:09:07 +02:00
jdotzki eea1264518 impr(bpmnrenderer): set correct outline for event sub-processes 2014-05-15 08:37:45 +02:00
jdotzki 10c1dbcf95 impr(bpmnrenderer): add task type symbols
close #45
2014-05-14 16:30:43 +02:00
jdotzki 048ce1e9cc feat(bpmnrenderer): add activity marker rendering
close #18
2014-05-09 16:31:10 +02:00
Nico Rehwaldt 98e7e5e807 fix(Viewer): include logo relative to viewer
This allows us to correctly include bpmn-js from other npm projects.
2014-05-09 15:19:53 +02:00
Nico Rehwaldt 7540186f6e fix(draw/labels): adjust font-size and no-di positioning 2014-05-06 17:24:13 +02:00
jdotzki 70778082b5 impr(bpmnrenderer): data association rendering 2014-05-06 17:22:26 +02:00
jdotzki d20fedcac6 impr(bpmnrenderer): message flow dash array set to 3 2014-05-06 16:58:01 +02:00
jdotzki 3002a79944 impr(bpmnrenderer): multi line label support for lanes
Lane labels can be two lines long.
Later improvement: If label is longer as two lines align it at container bottom so that text leaves lanes to the left or scale text size or cut text with '…. '
2014-05-06 16:21:53 +02:00
Nico Rehwaldt daeed80b49 feat(project): add license
Closes #43
2014-05-06 14:33:12 +02:00
jdotzki 4a26c14448 fix(bpmnrenderer): fixed incorrect rendering of event based gateways
close #42
2014-05-06 11:39:53 +02:00
Nico Rehwaldt ab73e2ea22 impr(draw/BpmnRenderer): set default width to 100px 2014-05-06 10:15:38 +02:00