499 Commits

Author SHA1 Message Date
Philipp Fromme
2335282a82 fix(bpmn-create-connect-preview): override #getConnection 2019-05-09 14:12:37 +00:00
Philipp Fromme
1958b2e81b fix(bpmn-connect-preview): override #getConnection 2019-05-09 14:12:37 +00:00
Nico Rehwaldt
d90f048e8c chore(layout): support { source, target } hints in BpmnLayouter
Closes #743
2019-05-08 12:59:27 +00:00
Philipp Fromme
175e395768 feat(ordering): always render groups on top
Closes #979
2019-05-07 14:36:32 +02:00
Niklas Kiefer
bf2dfe4338 feat(rules): add resizing of groups
Closes #956
2019-05-07 14:36:32 +02:00
Niklas Kiefer
89886d7c12 feat(ElementFactory): add #isFrame property on group creation
This allows basic support for diagram-js frame elements.

Closes #959
Closes #960
2019-05-07 14:36:32 +02:00
Philipp Fromme
13f1e05ee7 feat(grid-snapping): integrate with connection layout
Closes #1010
Related to #973
2019-05-07 10:08:35 +02:00
Maciej Barelkowski
e4fe8c239b style(modeling): simplify event-based-gateway behavior 2019-05-06 12:41:11 +02:00
Gustavo E. Jimenez Folta
424a05a18a feat(modeling): correctly handle event based gateway connections
Handles two new scenarios:

1. A user wants to connect an event-based gateway to an event-based
gateway target with existing incoming sequence flows. The existing
sequence flows are removed before connecting the new one.

2. A user wants to replace a gateway, that is already connected to
event-based gateway targets, with an event-based gateway. The existing
incoming sequence flows of the targets, which do not belong to the
newly replaced event-based gateway, are removed before the replacement
operation finishes.

This is because target elements in an event gateway configuration
must not have any additional incoming sequence flows other than
that from the event gateway.
2019-05-06 12:41:11 +02:00
Gustavo E. Jimenez Folta
b6e9c2186a fix(BpmnRules): update canConnectSequenceFlow()
This prevents multiple incoming sequence flows to target events of an
event-based gateway when the connection source is not an event-based
gateway.
2019-05-06 12:41:11 +02:00
Philipp Fromme
867b41c04f feat(grid-snapping): integrate grid snapping with auto place feature
Closes #1003
2019-04-30 09:32:42 +00:00
Philipp Fromme
4388359fb1 chore(autp-place): move helper function to util 2019-04-30 09:32:42 +00:00
Nico Rehwaldt
5affe25705 feat(modeling): adjust default collapsed participant height to 60px
This better aligns our collapse behavior with other tools.
2019-04-29 12:04:01 +00:00
Philipp Fromme
fa2e472361 feat(grid-snapping): integrate auto resize
Related to camunda/camunda-modeler#1344
Related to camunda/camunda-modeler#1349
2019-04-26 18:31:36 +00:00
Philipp Fromme
3b756e0725 feat(grid-snapping): snap resizable elements top-left
Related to camunda/camunda-modeler#1344
2019-04-26 18:31:36 +00:00
Maciej Barelkowski
06ffc9d407 fix(modeling/BpmnLayouter): properly lay out boundary event connections
Closes #891
2019-04-24 11:56:01 +00:00
Maciej Barelkowski
5438f1a0c2 chore(modeling/BpmnLayouter): refactor boundary event layout 2019-04-24 11:56:01 +00:00
Gustavo E. Jimenez Folta
0f7b8f483c feat(replace): auto-resize height when toggling pool collapse/expand 2019-04-23 15:56:50 +02:00
Maciej Barelkowski
55ca4c8f3d chore(modeling/label): adjust label position to laid out connection
Closes #718
2019-04-18 16:06:44 +00:00
Maciej Barelkowski
411da58d43 chore(modeling): remove reconnect listeners
Listeners are triggered via layout event.
2019-04-18 16:06:44 +00:00
Maciej Barelkowski
6f7925080c chore(modeling/BpmnUpdater): remove now unnecessary crop on reconnect
As of diagram-js@3.2.0 layouting will be triggered
on reconnectStart / reconnectEnd.

Related to #940
2019-04-10 19:08:49 +00:00
Nico Rehwaldt
8ca4c1d7b0 feat(modeling): allow basic movement of DataInput / DataOutput
Allow moving DataInput / DataOutput as
long as they do not leave their original
container.

Related to #951
2019-03-29 13:21:34 +00:00
Nico Rehwaldt
fe9d4ff06d feat(modeling): ensure wrapping DataInput/Output in participant works 2019-03-29 13:21:34 +00:00
Nico Rehwaldt
8c49cb679b fix(modeling): properly handle DataInput / DataOutput move
Closes #961
2019-03-29 13:21:34 +00:00
Nico Rehwaldt
2fff30a284 feat(label-editing): support data input/output
Related to #951
2019-03-26 11:55:36 +01:00
Maciej Barelkowski
39d4f1c57e feat(modeling): set isHorizontal=true for partipant/lane DIs
Closes #934
2019-01-31 10:46:16 +00:00
Nico Rehwaldt
31271059d4 fix(ordering): render labels always on top 2018-12-04 13:48:12 +00:00
Nico Rehwaldt
7aad42d178 fix(modeling): limit flow join behavior to bpmn:SequenceFlows
Closes #917
2018-11-30 09:32:05 +00:00
Nico Rehwaldt
9240971ce7 style(rules): remove unneeded unwrapping 2018-11-21 09:37:38 +01:00
Nico Rehwaldt
c3f967b39f chore(keyboard): handle { keyEvent } listener result
* event got renamed to keyEvent in context passed to
  keyboard listeners
2018-10-29 14:52:41 +00:00
Nico Rehwaldt
a525c633a2 chore(keyboard): register keys backed by editor actions only
* only register keyboard bindings that are backed by actual
  editor actions
* rename BpmnKeyBindings -> BpmnKeyboardBindings for parity with
  diagram-js@latest
* sub-class and override _keyboardBindings_ service provided
  by diagram-js
* extend spec to verify default actions
2018-10-29 14:52:41 +00:00
Nico Rehwaldt
645265ad7e chore(editor-actions): make dependencies optional
* Treat features as optional dependencies and register action
  only if feature exists
* Explicitly add features to the Modeler and NavigatedViewer types
2018-10-29 14:52:41 +00:00
Maciej Barelkowski
f0610721c9 feat(keyboard): use key value for bindings
`KeyboardEvent.keyCode` is deprecated, so the BpmnKeyBindings will
use non-deprecated `KeyboardEvent.key` instead.
2018-10-29 14:52:41 +00:00
Maciej Barelkowski
75135b667a feat(keyboard): rewrite listeners to use event passed in context
With the new version of `diagram-js`, the keyboard listeners receive
a single parameter which is an object with `KeyboardEvent` event
as the only property. `BpmnKeyBindings` needed to change in order
to make use of new version of API.
2018-10-29 14:52:41 +00:00
Philipp Fromme
6d54ff34e3 chore(boundary-event-behavior): clean up tests 2018-10-17 14:31:40 +00:00
Niklas Kiefer
178e1cfccb fix(modeling/behaviors): add a behavior that deletes attached boundaries after replacing a gateway with an event based gateway 2018-10-17 13:12:31 +00:00
Niklas Kiefer
b3e4b1dc1f fix(modeling/behaviors): add behavior for deleting boundaries on receive tasks after connecting to event based gateway 2018-10-16 10:53:57 +00:00
Niklas Kiefer
ea681df2d3 fix(bpmn-rules): adjust canAttach rule for boundary events after event based gateways 2018-10-16 10:53:57 +00:00
Maciej Barelkowski
ba42e9edde feat(global-connect): use rules for connection starting
* remove `BpmnGlobalConnect` provider
* use `connection.start` rule to determine whether
  an element can start a connection

Closes #565
Closes #870

BREAKING CHANGE:

* `BpmnGlobalConnect` got removed. Add `connection.start`
  rule to specify whether connection should be allowed.
2018-10-11 09:28:30 +00:00
Niklas Kiefer
350a5ab75e feat(contextPad): Adjustments for IntermediateCatchEvents
adjust tooltip titles
i18n support
2018-10-02 09:09:19 +02:00
Niklas Kiefer
6b0a73145d feat(contextPad): improve tooltip titles for IntermediateCatchEvents 2018-10-01 12:38:19 +00:00
Nico Rehwaldt
374c7d7f18 fix(rules): correct bpmn:Lane insert rule
Closes #855
2018-08-29 00:38:03 +02:00
Nico Rehwaldt
6689af6f5b feat(snapping): snap message flows to bpmn:Event mid
This snaps source / target to the element mid, if
the element is a `bpmn:Event`.

There is usually no more than one snap point for
an event other than the center.

Closes #850
2018-08-22 14:43:16 +02:00
Nico Rehwaldt
cdacc69a3d chore(modeling/BpmnLayouter): simplify manhattan layout logic 2018-08-22 14:43:16 +02:00
Nico Rehwaldt
905ee6f667 fix(rules): allow labels to be dropped everywhere
Closes #849
2018-08-22 14:41:59 +02:00
Nico Rehwaldt
898a0fa9c8 fix(modeling/DropOnFlowBehavior): filter redundant connections
This prevents duplicate flows from being created, accidentially.

Closes #774
2018-07-25 11:10:51 +02:00
Nico Rehwaldt
249ea6a3ea fix(modeling): disallow inserting on incoming/outgoing connection
Closes #836
2018-07-25 11:10:51 +02:00
Philipp Fromme
e637a8e57b feat(modeling/BpmnLayouter): layout Element -> Element loops
Closes #824
2018-07-13 10:29:00 +02:00
Philipp Fromme
220c0a73f3 feat(modeling/BpmnLayouter): handle boundary events
This adds proper connection layouting for sequence
flows leaving from boundary events.

If needed, such connections will be layoute with
an U-turn.

Closes #467
2018-07-13 10:16:11 +02:00
Nico Rehwaldt
4806938600 feat(modeling): create label at appropriate position
This re-introduces adaptive label positioning
on label creation as a feature.

It worked before but broke during the introduction
of optional labels.

Closes #825
2018-07-11 13:26:43 +02:00