Commit Graph

251 Commits

Author SHA1 Message Date
Nico Rehwaldt e2aaf342f7 feat(import): wire root element
Related to #151
2014-11-26 18:17:52 +01:00
Nico Rehwaldt 1c6058e6cb chore(bpmn-js): adjust to diagram-js changes
Related to #151
2014-11-26 11:31:23 +01:00
Nico Rehwaldt 2f679a36b9 feat(modeling): move to rules infrastructure
Related to bpmn-io/diagram-js#55
2014-11-21 09:22:51 +01:00
Nico Rehwaldt 90513e94b4 feat(toolkit): use 100% as default height / width 2014-11-21 09:22:51 +01:00
jdotzki 51918b3493 feat(drop): basic implementation
This commit adds a basic implementation for model drop

* using rules to check whether the drop is allowed
* updating the model after drop

See #127
2014-11-21 09:21:41 +01:00
Nico Rehwaldt 0b8baccd32 feat(palette): migrate to icon font
Related to #148
2014-11-17 18:26:07 +01:00
Nico Rehwaldt 3a377a3871 chore(core/ElementRegistry): pull API changes
Related to #153
2014-11-17 17:36:22 +01:00
Nico Rehwaldt b1f310a1db feat(context-pad): use font to render symbols
Related to #148
2014-11-17 11:02:25 +01:00
Nico Rehwaldt 8deb9d30a1 fix(import): ensure correctly import *associations
This commit ensures we correctly detect and import
Data*Associations and Associations.

It aligns logging across the import components, too, being slightly more
verbose and helpful.

Related to #112
2014-10-31 15:05:16 +01:00
Nico Rehwaldt 447086bbdf fix(import): correctly import label DI
Related to #145
2014-10-30 12:07:28 +01:00
Nico Rehwaldt c58532aeac chore(import): reorganize import related functionality
This commit puts all import related stuff into the import module.

The core module remains as an entry point to require the basic modules
needed by bpmn-js. At the time this is { import, draw }.
2014-10-30 12:06:43 +01:00
Nico Rehwaldt 05b044e64d feat(import): forgive missing bpmnPlane#bpmnElement
Related to #146
2014-10-28 15:13:52 +01:00
jdotzki 86f66bc534 improve(resize): allow to set minimum size for element 2014-10-14 17:26:50 +02:00
jdotzki 1e224370e2 improve(resize): restrict resizable elements
related bpmn-io/bpmn-js#140
2014-10-14 09:12:03 +02:00
jdotzki 392dfaee41 feat(resize): add ability to resize shapes
see #140
2014-10-10 09:06:21 +02:00
jdotzki 4ab6c472df fix(bpmnpaletteprovider): workaround for incorrect layouting of connections
The layout algorithm is broken for decimal coordinates see #143
This is a workaround to not trigger the bug when using the palette.
2014-10-08 11:38:01 +02:00
jdotzki 5633dc0b78 improve(elementfactory): changed default size for SubProcesses
- expanded: with enough space for a small process
- collapsed: same size as Tasks
2014-10-07 11:54:21 +02:00
jdotzki 0ffdbb7fbb fix(bpmnpaletteprovider): change , to ;
related #141
2014-10-06 15:46:26 +02:00
jdotzki d3dbeb1375 feat(bpmnpaletteprovider): BPMN item provider for the palette
close bpmn-js#137
2014-10-06 12:23:22 +02:00
jdotzki 2f64d1f4c5 fix(util): Correct CallActivities rendering
CallActivities aren't expanded by default the behavior can be set by 'di.isExpanded'

close  #131
2014-09-22 12:00:11 +02:00
jdotzki 29ec039df9 improve(bpmnrenderer): align timer event rendering with BPMN spec
close #77
2014-09-17 16:07:37 +02:00
Nico Rehwaldt 36cb6777ce fix(modeling): disallow connection -> startEvent 2014-09-15 16:01:09 +02:00
Nico Rehwaldt c797fec8e2 feat(Modeler): integrate snapping 2014-09-15 16:01:09 +02:00
Nico Rehwaldt 66c7a31d34 chore(label-editing): deselect element during editing 2014-09-15 14:42:43 +02:00
Nico Rehwaldt 4428be4227 fix(draw): render labels as one-liner per default
This is a temporary fix for #113
2014-09-15 14:41:26 +02:00
Nico Rehwaldt 8cc530bf58 feat(modeling): move external labels with nodes
Closes #105
2014-09-11 17:22:59 +02:00
Nico Rehwaldt eaddbb31c4 feat(context-pad): add visual creation of connections
Closes #107
2014-09-11 16:44:56 +02:00
Nico Rehwaldt a1044e2784 fix(label-editing): correctly compute direct-editing bbox
Closes #115
2014-09-09 15:21:21 +02:00
Nico Rehwaldt 0044a51bc5 feat(label-editing): auto hide empty labels
Related to #105
2014-09-09 15:20:30 +02:00
Nico Rehwaldt b5483b2565 chore(importer): attempt optimization 2014-09-08 19:04:18 +02:00
Nico Rehwaldt 9d16e17c5c fix(labels): correct positioning + hide if empty
This commit improves the label handling by

* showing the label only if it exists
* updating the status accordingly
* positioning the label correctly on import

Related to #113
2014-09-08 19:03:39 +02:00
Nico Rehwaldt d0644c953a feat(modeling): integrate connection repair 2014-09-04 13:47:31 +02:00
Nico Rehwaldt 6f937cf2f3 chore(import): wrap emitted errors / warnings 2014-09-04 13:47:31 +02:00
Nico Rehwaldt 7e5f4eba14 fix(context-pad): make all bpmn elements deletable
Related to #118
2014-09-04 13:47:31 +02:00
Nico Rehwaldt 85150135a6 chore(Viewer): remove unnecessary code 2014-09-04 13:47:31 +02:00
jdotzki e487d6d811 feat(context-pad): add delete button
See #118
2014-08-29 16:03:08 +02:00
Nico Rehwaldt 2c5548423b chore(modeling): remove custom shape.append handler 2014-08-28 17:38:51 +02:00
Nico Rehwaldt a301acc4c4 feat(modeling): integrate connection.move
Related to #125
2014-08-28 16:17:55 +02:00
Nico Rehwaldt c685c0fcce feat(project): add manhattan style layouting for flows
Related to #48
2014-08-27 16:55:26 +02:00
Nico Rehwaldt 969c882946 fix(context-pad): correct end-event entry sizing 2014-08-27 15:50:40 +02:00
Nico Rehwaldt 5a2c5c425c chore(navigation): move features to diagram-js
This commit moves the navigation features from bpmn-js to diagram-js so
that they can be reused in other modeling / viewer tools.

Related to #124

BREAKING CHANGE:

Navigation features have been moved to diagram-js. If you use them in
custom bundles, update their location accordingly:

bpmn-js/lib/features/movecanvas -> diagram-js/lib/navigation/movecanvas
bpmn-js/lib/features/zoomscroll -> diagram-js/lib/navigation/zoomscroll
bpmn-js/lib/features/touch -> diagram-js/lib/navigation/touch
2014-08-27 15:43:18 +02:00
jdotzki 470e0f88ba feat(modeling): update bpmn model on remove
On removeShape/removeConnection the BPMN model is updated accordingly.

related to #106
2014-08-22 15:20:48 +02:00
Nico Rehwaldt 53dc82349e fix(Viewer): export base layer as SVG only
This commit fixes the SVG export of bpmn-js.

* exports the base layer only (no overlays, no markers)
* assigns correct view box to exported SVG

Related to #97
2014-08-17 19:09:46 +02:00
Nico Rehwaldt c4776f191c fix(draw): correctly fill messages + intermediate events 2014-08-17 19:09:46 +02:00
jdotzki b5ba814952 improve(viewer): clean up SVG before export
Remove outer-marker-bound <rect> from export.

close bpmn-io/bpmn-js#97
2014-08-17 12:17:15 +02:00
jdotzki 63caaeb7f4 fix(draw): data store path
Corrected path fixes transparent background.
See #96
2014-08-15 11:38:45 +02:00
Nico Rehwaldt 86d5c20f07 fix(modeling): strip all namespaces for semantic id generation
Related to #108
2014-08-12 11:03:47 +02:00
jdotzki 58b9964828 improve(bpmnfactory): add semantic element IDs
The ID will have an semantic prefix: SequenceFlow_6bpz90i

related to bpmn-io/bpmn-js#108
2014-08-11 17:55:54 +02:00
Nico Rehwaldt ac3669f0ca feat(Modeler): include bpmn-js-cli 2014-08-08 14:42:50 +02:00
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