Commit Graph

168 Commits

Author SHA1 Message Date
Maciej Barelkowski dd3d7e9c64 fix(modeling): fix selection during reconnection with replacement
Closes #896
2019-06-06 09:10:56 +00:00
Maciej Barelkowski 4c10420017 feat(modeling): replace connection with correct type if rules allow
As a side effect, this corrects also the layout of the replacement.

Closes #1049
2019-06-06 09:10:56 +00:00
Philipp Fromme 8815b73599 feat(grid-snapping): snap width and height on create first participant
Closes #1061
2019-06-05 15:50:47 +02:00
Philipp Fromme a4e160c48b chore(bpmn-snapping): move create behavior to seperate behavior 2019-06-05 14:36:39 +02:00
Philipp Fromme d42d5e3448 chore(resize-behavior): move resize behavior to seperate behavior
* setting minimum bounds and resize constraints moved to ResizeBehavior

Related to #1290
2019-06-05 14:36:39 +02:00
Philipp Fromme ca12ac91a4 chore(bpmn-snapping): move participant fitting to participant behavior
Related to #1290
2019-06-05 14:36:39 +02:00
Niklas Kiefer 8862865e2a feat(modeling): improve label positioning for boundary events
* Do not allow placing label onto host

Relates to camunda/camunda-modeler#1206
2019-06-05 06:04:42 +00:00
Nico Rehwaldt 0a6cecc609 feat(modeling): lay out connection once per event attachment 2019-06-04 17:44:47 +00:00
Maciej Barelkowski 9dbc3c88df feat(modeling): allow to attach intermediate event with connections
Closes #478
2019-06-04 17:44:47 +00:00
Maciej Barelkowski 33f9e7be6e feat(modeling): allow to attach events with event definition
This feature is allowed only for events which have their boundary
counteparts, i.e. intermediate throw, message catch, timer catch,
signal catch and conditional catch events.
2019-06-04 17:44:47 +00:00
Maciej Barelkowski 1e9aceecd7 feat(modeling): create boundary event via moving intermediate event 2019-06-04 17:44:47 +00:00
Maciej Barelkowski c1052383da feat(modeling): layout connection once per detachment 2019-06-04 16:07:13 +02:00
Maciej Barelkowski 4d6c8586e4 feat(modeling): allow to detach Boundary Events
Closes #1045
2019-06-04 16:07:13 +02:00
Gustavo E. Jimenez Folta 3a0f044d9e feat(modeling): add subprocess with start event included
When:

1. Creating expanded subprocess from palette.
2. Replacing task with expanded subprocess.
2019-05-29 16:05:22 +02:00
Gustavo E. Jimenez Folta bc5a3f803e revert: feat(modeling): prevent expanded subprocess overlap of previous content
This reverts commit 05fea05834.
2019-05-29 11:23:41 +02:00
Niklas Kiefer 57f516ef32 chore(group-behavior): move category creation to util 2019-05-28 06:46:53 +00:00
Niklas Kiefer a7e3980059 feat(modeling/behaviors): add GroupBehavior
* Create new Category + Value for every new Group
* Cleanup on Group deletion
2019-05-23 15:12:38 +02:00
Philipp Fromme 05fea05834 feat(modeling): prevent expanded subprocess overlap of previous content
This covers two scenarios:

1. When a shape is replaced with an expanded subprocess
2. When a subprocess is toggled from collapsed to expanded

Only when:

1. There are incoming sequence flows (previous content)
2. There are no outgoing sequence flows (following content)
2019-05-15 16:57:32 +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
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
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 39d4f1c57e feat(modeling): set isHorizontal=true for partipant/lane DIs
Closes #934
2019-01-31 10:46:16 +00:00
Nico Rehwaldt 7aad42d178 fix(modeling): limit flow join behavior to bpmn:SequenceFlows
Closes #917
2018-11-30 09:32:05 +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
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 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
Nico Rehwaldt 300e7010c4 fix(modeling): correct DataStoreBehavior updating multiple stores 2018-06-18 09:21:18 +02:00
Philipp Fromme 5cc28d5d55 fix(modeling): apply DataStoreBehavior in collaboration only
* updating parents of datastores in the root is only
  necessary when deleting a subprocess in a collaboration

Related to camunda/camunda-modeler#823
2018-06-13 13:48:39 +02:00
Nico Rehwaldt fb5fccb331 style(modeling): use constant instead of magic string 2018-06-13 11:08:46 +02:00
Philipp Fromme 100f3fb2ee fix(label-behavior): text annotation resizing after text property change
Depends on bpmn-io/diagram-js#259

Related to camunda/camunda-modeler#631
2018-06-13 11:02:55 +02:00
Nico Rehwaldt 6c081d854f chore(label-editing): remove businessObject name on empty text
The following two actions will now unset the
business objects name property:

* deleting external label
* entering empty text via direct editing
2018-06-11 11:39:08 +02:00
Nico Rehwaldt a7a1743df0 fix(modeling): properly cascade label deletion
Ensure we execute the following nicely:

* unset name -> remove label shape
* remove label shape -> unset name
2018-06-11 11:39:08 +02:00
Nico Rehwaldt 4ade805f3d style(modeling): use constant instead of magic string 2018-06-06 14:31:31 +02:00
Philipp Fromme 4a0f6da814 fix(label-behavior): properly check for name property change
Related to camunda/camunda-modeler#824
2018-06-06 13:35:57 +02:00
Nico Rehwaldt 4bb270f192 chore(draw): unify text rendering into service
A newly introduced TextRenderer is responsible for text
rendering and text related bounds computation.

This removes a bunch of code duplication, too.
2018-05-24 16:26:01 +02:00
Philipp Fromme 7537757357 feat(labels): labels can be deleted
Related to camunda/camunda-modeler#243
2018-05-24 16:22:51 +02:00
Philipp Fromme 690417b389 feat(modeling): allow data store anywhere in collaboration
ensure valid BPMN 2.0 parent when

* creating/moving data store
* removing participant
* turning process into collaboration
* turning collaboration into process

Closes #483
2018-05-17 15:09:37 +02:00
Nico Rehwaldt 9be61259bd chore(project): drop 'use strict'
We use ES modules, so 'use strict' is not necessary anymore.
2018-04-03 18:09:53 +02:00
Nico Rehwaldt d3449ca87c chore(project): es6ify source code
* use ES6 import / export
* UTILS: export individual utilities
* TESTS: localize TestHelper includes

BREAKING CHANGE:

* all utilities export independent functions
* library sources got ported to ES6. You must now use
  a ES module bundler such as Browserify + babelify or
  Webpack to consume this library (or parts of it).
2018-04-03 16:32:14 +02:00
Nico Rehwaldt 11f5a22471 chore(project): adjust min-dash usage (2) 2018-03-22 11:59:39 +01:00
TheSharpieOne Bot 245d1d6a96 chore(project): upgrade lodash to min-dash 2018-03-22 11:59:39 +01:00
Nico Rehwaldt b03014fc2c chore(project): update to new lint style 2018-02-27 10:08:31 +01:00
Nico Rehwaldt 19e4e19bb5 chore(project): migrate to new SECTION comments 2018-02-27 09:57:22 +01:00
Philipp Fromme f5afc732fe fix(drop-on-flow): don't insert on accidentally found intersection
Related to camunda/camunda-modeler#727
2018-02-14 22:15:33 +01:00
Nico Rehwaldt 1333479815 fix(modeling/behavior): round label move adjustment
Ensure we don't return floating point numbers for conection label
adjustments calculated on connection changes.
2017-12-13 14:21:19 +01:00
Nico Rehwaldt 5761e01ffe feat(modeling): adjust label location based on free space
Reacts on connection create, layout, reconnect and waypoint
update to find a suitable place for the label and reposition it.

Closes #738
2017-12-11 15:40:40 +01:00
Nico Rehwaldt ce361dabd7 fix(modeling/DropOnFlowBehavior): ensure label is created before executing 2017-12-11 15:40:40 +01:00
pedesen 58207e7db2 feat(DropOnFlowBehavior): drop existing elements on flows
Closes #695
2017-07-27 15:15:08 +02:00
pedesen b1a544b84f fix(dropOnFlowBehavior): ignore drop point if bendpoint is inside shape
Closes #696
2017-07-27 13:41:50 +02:00
Nico Rehwaldt ff140d1a50 style(lib): correct indention 2017-05-19 12:56:59 +02:00
Nico Rehwaldt 83f55b1fb1 fix(modeling): handle label layouting edge case
Related to #669
2017-05-03 15:02:52 +02:00
Nico Rehwaldt 7d896855a9 fix(modeling): correct label line attachments not being recognized
* remove rounding where it does not matter
* work around some precision errors in logic
* adjust test cases (to higher precision)

Closes #669
2017-05-03 15:02:52 +02:00
Nico Rehwaldt 2fd46ac294 fix(modeling/layout): handle zero-length lines during adjustment
Closes #669
2017-03-21 09:01:21 +01:00
Philipp Fromme 79e8378db0 fix(label-support): fix positioning of label created on shape create
* make sure label shape is created with correct size
* make sure test varifies behaviour

Closes camunda/camunda-modeler#535
2017-03-07 15:22:43 +01:00
Nico Rehwaldt d1072471c4 fix(drop-on-sequence-flow): ensure correct behaviour
Closes #667
2017-03-02 11:45:34 +01:00
Ricardo Matias def402971c feat(modeling): add move onto sequence flow
This adds the ability to move flow nodes onto existing
sequence flows (similar to the create on flow behavior
implemented with an earlier bpmn-js release).

Closes camunda/camunda-modeler#432
2017-01-27 15:31:26 +01:00
hoferch91 a8cf097ed0 feat(modeling): retain waypoints with connection on shape deletion
When keeping the connection when the intermittant element,
make sure we keep the waypoints, too.

closes #581
2016-08-23 17:13:25 +02:00
Philipp Fromme 91cfcd9bac fix(modeling): handle float bendpoints in label behavior
* silently round all values when doing circle-line intersection

closes #602
2016-08-10 13:14:56 +02:00
hoferch91 226a0d76ed feat(replace): properly collapse / expand SubProcess(es)
* correctly toggle collapse / expand state
* update children visibility

Closes #575
Closes #510

review(collapse-expand)
2016-08-09 11:33:59 +02:00
Jan Stümmel b881ca8086 fix(modeling): handle non-integer waypoints in LabelBehavior
* verify space tool / label layouting behavior

Closes #590
2016-07-14 08:54:45 +02:00
Jan Stümmel 6c77e23692 fix(modeling): do not layout hidden labels
closes #587
2016-07-05 17:19:13 +02:00
Jan Stümmel fd198b6059 feat(modeling): move labels with connections
* move on segment dragging
* move on reconnect
* move on bendpoint add / remove

Closes #331
2016-07-05 12:01:08 +02:00
Nico Rehwaldt df54005cfa feat(modeling): repair broken connection dockings on import
Closes #479
2016-06-27 00:32:17 +02:00
Philipp Fromme 6da1a0cb63 feat(replace): keep element ID on replace
Closes #513
2016-06-13 16:53:13 +02:00
Nico Rehwaldt 0ba239bbce chore(project): switch to eslint
Use eslint instead of jshint for linting.

* better linting results
* test files linted, too
* consistent code style checks

Closes #568
2016-06-07 09:55:32 +02:00
Ricardo Matias 30e3fdd81c fix(copy-paste): allow pasting of elements onto lanes
Closes #532
2016-05-03 17:27:25 +02:00
Ricardo Matias 612b93db2e feat(copy-paste): disallow pasting of participants on some scenarios
Participants are not allowed to be pasted onto a Process,
if the Process already has other elements.

Closes #526
2016-05-03 15:23:45 +02:00
Ricardo Matias 3f04e18398 fix(copy-paste): correctly paste on lanes
Closes #516
2016-05-02 14:38:42 +02:00
Ricardo Matias c586c908b2 feat(ModelingFeedback): add tooltip when pasting is disallowed
Only in the case of pasting outside of collaboration.

Closes camunda/camunda-modeler#252
2016-04-29 16:19:09 +02:00
Ricardo Matias 1b9ebfc993 feat(copy-paste): allow copying & pasting of elements
Closes #391
2016-04-22 09:34:53 +02:00
Vladimirs Katusenoks 07a1ef29b6 fix(morphing): release id on element replace
Closes camunda/camunda-modeler#97
2016-04-21 11:50:36 +02:00
Vladimirs Katusenoks bc53dc98db fix(id): unclaim id on element remove
Closes #421

Fixing incorrect test+implementation for ID property update
2016-04-21 11:50:36 +02:00
Philipp Fromme ec159381ce fix(replace): preserve label position on element replace
closes #235
2016-04-20 16:13:02 +02:00
Philipp Fromme 7de043ab9d fix(modeling): adjust position of hidden label on waypoints change
closes bpmn-io/diagram-js#158
2016-04-20 16:00:14 +02:00
Jan Stümmel bb06a0386d feat(modeling): combining two sequence flows when removing an element
combines only if removed element has one outgoing and one incoming sequence flow

Closes #433
2016-04-13 14:38:38 +02:00
Vladimirs Katusenoks 60720c8ae7 fix(modeling): unset gateway default on default flow delete
Closes #505
2016-04-04 17:24:01 +02:00
davcs86 49173abdad feat(i18n): add localization
* Palette, ContextPad, Errors...

Closes #491
2016-03-11 20:10:10 +01:00
Nico Rehwaldt 1bceaaa229 chore(modeling): move BpmnLabelSupport to behavior
* Make sure the label support is part of our
behavior definitions.
* Adjust test cases accordingly.
2016-03-08 14:12:52 +01:00
Nico Rehwaldt cc2cf3f561 chore(modeling/behavior): cleanup code 2016-01-27 11:56:05 +01:00
Ricardo Matias 694d52d6bb fix(ReplaceMenuProvider): handle condition/default when morphing flows
* Remove conditionExpression when morphing to default flow
 * Remove default property when morphing to conditional flow

Closes #441, closes #442
2016-01-08 12:01:01 +01:00
Nico Rehwaldt 9ac0a9a957 fix(modeling): correctly populate DataInputAssociation#targetRef
Closes #431
2016-01-06 11:57:52 +01:00
Nico Rehwaldt 4ea70a05de fix(snapping): remove prev/next resize constraints for unbalanced resize 2015-10-22 20:35:34 +02:00
Nico Rehwaldt de35cdc6a0 chore(modeling): switch to primary modifier for lane expanding 2015-10-22 20:28:08 +02:00
Nico Rehwaldt d789342b10 feat(modeling): update Lane#flowNodeRefs while modeling
Closes #387
2015-10-20 16:05:24 +02:00
Nico Rehwaldt 7af6d916ce feat(context-pad): use #removeElements when deleting 2015-10-20 16:05:24 +02:00
Nico Rehwaldt 5e26068f99 feat(modeling): add lane modeling operations
This commit adds the functionality to

* add a lane (above/below an existing one)
* split a lane into sub lanes
* remove a lane
* resize a lane

Closes #379
Closes #338
2015-10-20 15:47:12 +02:00
pedesen 08c2ebc78f feat(modeling): add data objects
Closes #344
2015-10-07 15:15:57 +02:00
Ricardo Matias 8a0f566ee3 feat(replace): add cancel events
Closes #337
2015-09-28 11:35:38 +02:00
pedesen ccf21e2f0c fix(replace-preview): rename canExecute.replace -> canExecute.replacements
Closes #346
2015-09-01 18:04:12 +02:00
Nico Rehwaldt d9788c7f31 feat(ordering): add sequence flow + association to correct parent
* remove ModelUtil#getSharedParent because we do proper ordering
  via BpmnOrderingProvider now.
* Cherio!

Related to #316
2015-08-21 17:34:41 +02:00
Nico Rehwaldt 711a2df758 feat(modeling): wrap existing elements in new lane
Related to #316
2015-08-21 17:34:41 +02:00
pedesen 1cdce93f5b fix(selection): select element replacements after move
Closes #335
2015-08-21 13:46:21 +02:00
Nico Rehwaldt fbf82e83e5 chore(modeling/behavior): order behaviors 2015-08-19 17:24:49 +02:00
Nico Rehwaldt 5c629a9889 chore(modeling/behavior): rename Remove{->Participant}Behavior 2015-08-19 17:24:49 +02:00
Nico Rehwaldt 046f962244 fix(modeling/behavior): only replace existing connections 2015-08-19 17:24:49 +02:00
pedesen 4196ae8b00 feat(replace-preview): Add visual feedback during shape movement
Closes #325
2015-08-19 10:52:15 +02:00