Commit Graph

213 Commits

Author SHA1 Message Date
pedesen 02416de290 chore(bpmn-rules): add function to check for same parent 2015-07-30 10:36:07 +02:00
Nico Rehwaldt 8e4f480868 feat(modeling/layout): improve sequence flow layouting behind Gateways
Closes bpmn-io/bpmn-js#227
2015-07-30 10:36:06 +02:00
Nico Rehwaldt 359e0e01f4 chore(modeling): use postExecuted when checking connection rules 2015-07-29 17:56:14 +02:00
pedesen 42c052f7ec feat(replace): morph boundary events
Closes #293
2015-07-27 10:55:29 +02:00
pedesen 0651bf39a8 feat(keyboard): add select all key binding
Closes #184
2015-07-23 15:46:42 +02:00
Ricardo Matias 75dc681d46 feat(modeling): add boundary events behavior
This commit adds support for modeling boundery events.

Users may pull out the boundary events from the palette.

Closes #292
2015-07-22 17:23:31 +02:00
pedesen d467222025 chore(popup-menu): rename menu entry for collapsed sub process 2015-07-21 17:10:12 +02:00
pedesen 363ce892c9 fix(modeling): sequence flow can be reconnected to participant
Closes #315
2015-07-20 16:48:44 +02:00
pedesen 8c6c920482 fix(modeling): message flow updating correctly after changing source
Closes #267
2015-07-20 16:48:44 +02:00
pedesen 31ea6b2f91 feat(modeling): add ad-hoc sub processes
Closes #271
2015-07-14 15:26:43 +02:00
pedesen 367eeb80c7 feat(popup-menu): undo and redo toggling markers is reflected in the popup menu
Closes #308
2015-07-07 14:42:27 +02:00
Ricardo Matias 9a79330d5b fix(attaching): correct api changes from diagram-js 2015-07-03 16:00:41 +02:00
pedesen 88f91d342b feat(replace): model collapsed subprocesses using the replace menu
Closes #303
2015-07-03 15:54:36 +02:00
pedesen af991e89e9 feat(BpmnReplace): morphing between expanded sub processes and transactions
Closes #223
2015-06-26 15:36:33 +02:00
pedesen af5354e337 feat(popup-menu): add toggle buttons for loop and MI markers
Closes #275
2015-06-26 14:13:35 +02:00
pedesen 6da0d166e3 feat(popup-menu): allow morphing a task into a call activity
Closes #304
2015-06-23 17:24:13 +02:00
Nico Rehwaldt 71a5c2e1ed fix(modeling): correctly update extension attributes
Closes #301
2015-06-22 14:35:30 +02:00
Nico Rehwaldt ae962de925 fix(palette): add required modules
This adds space-tool and lasso-tool as required modules to the BPMN
palette. That in term ensures that users can simply reuse the palette
without further configuration.
2015-06-17 12:03:37 +02:00
pedesen 402e898e91 chore(bpmn-replace): use new popup menu api
related to #294
2015-06-11 15:21:21 +02:00
Nico Rehwaldt a04d03da44 chore(snapping): add tests + adjust min participant size
Related to #299
2015-06-10 15:58:52 +02:00
Nico Rehwaldt 749120c4e9 fix(modeling): allow only bpmn:FlowNode(s) to be dropped on flow
Closes #297
2015-06-09 11:04:05 +02:00
Nico Rehwaldt 19673a340c test(snapping): add participant snapping test case
Related to #290
2015-06-03 17:48:40 +02:00
Ricardo Matias cced954f37 fix(snapping): add participant specific min resize bounds
closes #290
2015-06-03 17:47:58 +02:00
Nico Rehwaldt 084d831d9e feat(modeling): add generic create-on-flow
Closes #232
2015-06-02 14:22:58 +02:00
pedesen 58f5965335 feat(modeling): drop new intermediateThrowEvents on sequenceFlows
Related to #232
2015-05-28 17:47:50 +02:00
Nico Rehwaldt 247594dbbf fix(keyboard): use correct lasso key 2015-05-26 14:06:16 +02:00
Mohsen Hariri 206457e764 fix(context-pad): fix context pad positioning in special case
context pad was misplaced when the canvas is placed with a left offset within the parent
2015-05-15 11:11:19 +02:00
Nico Rehwaldt 22536aff50 fix(modeling): rename (multi-select -> lasso)-tool
Key binding (for activation): l
2015-05-13 12:09:08 +02:00
Nico Rehwaldt d3aa1a7667 fix(modeling/rules): allow moving message flows
Closes #276
2015-05-12 18:04:42 +02:00
Nico Rehwaldt 53a701da93 fix(context-pad): use correct icon 2015-05-12 15:25:35 +02:00
Nico Rehwaldt bd2a4dd16b fix(rules): connect message flow to message/untyped events only
Closes #261
2015-05-12 14:35:21 +02:00
Nico Rehwaldt a70778880f chore(palette+context-pad): update tooltips
Related to #259
2015-05-11 17:36:01 +02:00
Nico Rehwaldt 7b712d8428 feat(modeling): add feedback on invalid modeling action
This commit adds the ModelingFeedback component. It hooks into
modeling action rejected events and displays error messages
to the user.

The current behavior is to show an error message when dropping
a flow node outside a participant in a collaboration.

Related to #203
2015-05-11 17:01:48 +02:00
Nico Rehwaldt bacd2b4322 feat(keyboard): add direct editing -> e binding
Related to #243
2015-05-06 18:09:13 +02:00
Nico Rehwaldt d54ee97aa1 feat(keyboard): add tooling specific key bindings
* space tool -> [s]
* multi select -> [m]

related to bpmn-io/bpmn-js#244
2015-05-06 17:36:46 +02:00
Nico Rehwaldt f0f475dad5 feat(palette): integrate multi selection + space tool
related to #244
2015-05-06 16:52:33 +02:00
Nico Rehwaldt 4f236382a0 fix(modeling): adjust default size for participants
From 600x300 -> 600x250.

Closes #262
2015-05-06 16:51:01 +02:00
Ricardo Matias 6fc512b477 feat(resize): snap to minimum bounds during resize
closes #252
2015-05-04 15:32:36 +02:00
Ricardo Matias 6f8999b8ae fix(modeling/BpmnUpdater): restore children di when changing diagram type
closes #253
2015-05-04 15:08:32 +02:00
Nico Rehwaldt 7a54267536 fix(replace): remove unused modeling dependency
The modeling module should be provided by components explicitly.

This allows users to replace it for customization.
2015-04-30 11:40:05 +02:00
Nico Rehwaldt cb52a479e0 fix(palette): add missing create feature 2015-04-30 11:33:27 +02:00
Nico Rehwaldt af9ce652e2 feat(snapping): snap to source element
This ensures we snap to a source element if one is provided, i.e. during
shape.append.
2015-04-29 15:04:54 +02:00
Nico Rehwaldt b233ab957c feat(snapping): add bpmn-specific move snapping
This commit adds message flow + collaboration specific snapping by
subclassing the diagram-js provided default Snapping implementation.

* Add collaboration snapping
* Rename lib/util/{Name}.js -> lib/util/{Name}Util.js

Closes #255
2015-04-29 15:04:54 +02:00
Nico Rehwaldt d8ef4772cd chore(modeling): make append behavior a CommandInterceptor
Append behavior inherits from CommandInterceptor now.

Connection type inference related code is reused from Modeling#connect.
2015-04-28 14:13:54 +02:00
Nico Rehwaldt 183a41cf26 fix(modeling): convert to process when deleting last participant only
Related to #128
2015-04-28 14:13:54 +02:00
Nico Rehwaldt 6eceb0926b feat(layout): add straight layouting for message flows
This commit adds a straight layouting strategy for message flows.
Other than that it makes sure connection attachments are being
remembered during reconnection / shape move.

Closes #249
Closes #179
2015-04-22 16:19:26 +02:00
Nico Rehwaldt 087506cc9a feat(modeling): transform message <> sequence flows
Closes #199
2015-04-22 16:12:58 +02:00
Nico Rehwaldt c14a87e5ad feat(modeling): add message flow modeling
Related to #199
Closes #201
2015-04-22 16:12:58 +02:00
Nico Rehwaldt de648520d5 feat(modeling): snap initial participant to diagram contents
Closes #241
2015-04-16 18:30:04 +02:00
Ricardo Matias 0381811d03 feat(space-tool): add create/remove space behaviour
closes #132
2015-04-16 10:00:18 +02:00
Nico Rehwaldt 0a03e59866 feat(modeling): add participant modeling behavior
This commit adds the ability to model participants from the palette.

* Empty diagrams can be used as a start for participant _AND_ process diagram
* Process diagrams can be converted to collaboration diagrams by dropping
  a participant onto them

Closes #128
2015-04-14 15:23:16 +02:00
Nico Rehwaldt 2e73f5ab85 fix(modeling): update id property in diagram-js, too
This fixes a bug where updating the id property of an element
was not propagated to the diagram. Thus, retrieving the element
based on the new id from diagram-js did not work.

Closes #238
2015-04-13 10:55:17 +02:00
jdotzki 8cd3c78d5e fix(rule): allow drop of associations
close #202
2015-03-25 13:45:54 +01:00
Nico Rehwaldt e7bbb5d6bf chore(project): use inherits util 2015-03-23 15:15:32 +01:00
Nico Rehwaldt 695a973e92 chore(modeling): renamve behaviors for clarity 2015-03-23 15:14:54 +01:00
Nico Rehwaldt e06fb32ad2 fix(style): remove trailing comma 2015-03-13 10:39:22 +01:00
Nico Rehwaldt 397a4aeea5 fix(replace): keep associations during replace
Closes #226
2015-03-12 14:03:28 +01:00
Nico Rehwaldt ae8e6146d1 chore(project): fix whitespace character 2015-03-11 17:42:56 +01:00
Nico Rehwaldt 1c0ade9d51 feat(replace): focus element after replace
Related to #192
2015-03-11 16:31:42 +01:00
Nico Rehwaldt 67d81c346c fix(replace): pre-build BPMN elements
This simplifies the ways we work with replacements.

Instead of monkey-patching the original replace functionality we

* create the business object / target object
* pass it to replace

A simple way that works well with our existing infrastructure.

Other changes:

* fixes redo / undo issues.
* splits context-pad + replace

Closes #180
2015-03-11 16:19:09 +01:00
Nico Rehwaldt d1d42f3713 chore(project): upgrade to latest bpmn-font 2015-03-10 16:07:58 +01:00
jdotzki 2b8d8110fd fix(contextpad): prevent replace menu from opening multiple instances 2015-03-08 11:51:38 +01:00
jdotzki 2321caecd7 improve(contextpad): remove modeling options behind throwing link events
related #219
2015-03-07 12:59:22 +01:00
jdotzki 6aceab9dbf feature(contextpad): add catch events to pad for event based gateways
close #206
2015-03-06 09:27:18 +01:00
jdotzki e665895448 improve(font): update to latest font
#186
2015-03-05 18:04:57 +01:00
jdotzki 89a3a6bcd8 feature(modeling): set di.isMarkerVisible for exclusive gateway as default
close #221
2015-03-05 14:19:47 +01:00
jdotzki c5af54c1e3 feature(rules): add rule for link events
close #219
2015-03-05 13:57:32 +01:00
jdotzki 6f85d3081f improve(contextpad): use receive-task icon instead just receive
close #214
2015-03-04 15:50:06 +01:00
jdotzki 7676b9f244 fix(context pad): correct position of replace menu
close #210
2015-03-04 15:27:13 +01:00
jdotzki 1c45d98f9a fix(contextpad): add missing events to replace menu
close #209
close #217
2015-03-04 12:28:18 +01:00
jdotzki 225cbb914c fix(rules): fix modeling rules for event based gateways
Allow  condition and signal catching events after event based gateways.

close #213
2015-03-04 10:20:37 +01:00
jdotzki f527096ac2 fix(contextpad): add signal event to end event replace menu
close #211 #218
2015-03-03 17:09:54 +01:00
jdotzki 5604e13468 fix(contextpad): remove incorrect replace targets
close #207
2015-03-03 15:58:59 +01:00
jdotzki 73c6c883c5 fix(replace): run model updates on 'execute'
close bpmn-io/bpmn-js#213
2015-03-03 15:52:40 +01:00
jdotzki 22c0065d5d fix(context pad): remove instantiating gateways from replace menu
close #212
2015-03-03 15:15:00 +01:00
jdotzki 7207d010db feat(contextpad): add event to replace-menu
See #192
2015-03-02 13:43:06 +01:00
jdotzki 66801df111 feature(rules): add modeling rules for event based gateways
closes #193
2015-03-02 13:43:06 +01:00
jdotzki 18c2b0552e feat(contextpad): add replace-menu to context pad
Support for Gateways and Task Types was added.

See #130
2015-03-02 13:43:06 +01:00
jdotzki 3873709141 feat(replace): add service that allows to replace elements
API
- BpmnReplace#replaceElement

see bpmn-io/bpmn-js#130
2015-03-02 13:43:06 +01:00
Nico Rehwaldt 3996408404 chore(project): migrate to modularized lodash@3
* use specialized lodash utilities
* consistently apply 'use strict'

Related to #185
2015-02-02 14:46:21 +01:00
Nico Rehwaldt a899df2a12 chore(modeling/rules): reduce complexity
Related to #176
2015-01-29 14:03:17 +01:00
jdotzki d8057a2acc fix(rules): disallow circular connection
This temporarily disallows connections from and to the same element
because it rendered the connection unusable..

This change can be reverted once proper auto layout for circular connections is implemented.

Closes #176
2015-01-29 13:26:32 +01:00
Nico Rehwaldt 85e512c97d feat(modeler): add bendpoints
It is now possible to add bendpoints to flows or drag bendpoints to
update their position / trigger reconnects.

Upon bendpoint move a rule is checked to figure out whether or not a
bendpoint operation is allowed or not.

Closes #123
Closes #138
Closes #139
Closes #165
2015-01-20 17:19:56 +01:00
Nico Rehwaldt 39d5fa2e9c feat(modeling): inherit default handlers 2015-01-06 16:28:39 +01:00
Nico Rehwaldt 2019c658df feat(modeling): add property update mechanism
This adds the modeling#updateProperties(element, props) method to the
modeler that can be used to set BPMN 2.0 properties on elements.

By assigning the properties this way, the modeler is aware of the
elements that got changed and can update / redraw the elements
accordingly.

This hooks up with the modelers undo/redo chain, too.

Related to #167
2015-01-02 16:15:18 +01:00
Nico Rehwaldt 2909847ac8 feat(direct-editing): rework editing
This commit updates the default direct editing behavior.

It activates on non-touch environments only and only on embedded
labels, too.

This provides a way smoother modeling experience.
2014-12-23 16:56:35 +01:00
Nico Rehwaldt 355059c30a feat(modelling): unify drag/drop handling from palette/context-pad
Related to bpmn-io/diagram-js#60
2014-12-23 16:56:35 +01:00
jdotzki 1dd19fdb0d fix(contextpad): different handling for deletion of shapes and connections
See bpmn-io/bpmn-js#121
2014-12-23 14:24:34 +01:00
Nico Rehwaldt 18784c5994 fix(label-editing): listen to correct events 2014-12-17 21:55:03 +01:00
Nico Rehwaldt 429a903dd5 style(*): fix jshint warnings 2014-12-07 15:10:02 +01:00
Nico Rehwaldt 6041717c6c feat(modeling): implement create via palette/context-pad
Related to #137
2014-12-07 13:08:50 +01:00
Nico Rehwaldt e387768ef1 fix(modeling): use correct parent for bpmn:TextAnnotation 2014-12-02 08:36:15 +01:00
Nico Rehwaldt 9e37037ac6 fix(move): adjust positioning of all attached labels 2014-11-28 11:38:06 +01:00
Nico Rehwaldt 3af41e2e7e fix(rules): restrict movement on flow elements only
For the moment we allow moving flow elements in between diagrams, only.
2014-11-27 11:56:31 +01:00
Nico Rehwaldt 2258642cb4 fix(modeling): skip updating BPMN parent on label move 2014-11-27 11:55:38 +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
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 b1f310a1db feat(context-pad): use font to render symbols
Related to #148
2014-11-17 11:02:25 +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