-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add initial pool and swimlane implementation #314
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One final note: how can I disassociate a BPMN element from a pool? I can drag an element into a pool and they are associated (e.g. they move together), but dragging them outside of the pool won't disassociate the elements. This is in contrast to behaviour of similar elements in other diagram types (e.g. packages in class diagrams) where I can drag a child element out of a parent element to disassociate them.
src/tests/unit/packages/bpmn/bpmn-pool/bpmn-transaction-component-test.tsx
Show resolved
Hide resolved
src/tests/unit/packages/bpmn/bpmn-swimlane/bpmn-swimlane-component-test.tsx
Show resolved
Hide resolved
@loreanvictor I would merge the Groups PR first - that one fixes the disassociation issue for the pools and swimlanes as well |
# Conflicts: # src/main/i18n/de.json # src/main/i18n/en.json # src/main/packages/bpmn/bpmn-diagram-preview.ts # src/main/packages/bpmn/index.ts # src/main/packages/components.ts # src/main/packages/popups.ts # src/main/packages/uml-elements.ts # src/tests/unit/packages/bpmn/bpmn-annotation/bpmn-annotation-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-call-activity/bpmn-call-activity-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-conversation/bpmn-conversation-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-end-event/bpmn-end-event-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-flow/bpmn-flow-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-gateway/bpmn-gateway-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-intermediate-event/bpmn-intermediate-event-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-start-event/bpmn-start-event-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-subprocess/bpmn-subprocess-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-task/bpmn-task-component-test.tsx # src/tests/unit/packages/bpmn/bpmn-transaction/bpmn-transaction-component-test.tsx
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# Conflicts: # src/main/i18n/de.json # src/main/i18n/en.json # src/main/packages/bpmn/bpmn-diagram-preview.ts # src/main/packages/bpmn/index.ts # src/main/packages/components.ts # src/main/packages/uml-elements.ts
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
a few issues I've found on:
-
the
zoomFactor
property error appears again, perhaps it was fixed on some other elements? it happens when adding a pool. -
management of lanes in a pool differs from management of other "child elements": to add a lane you need to double click on the pool and add them via the context menu, but to manage lanes you need to select lanes individually.
this is in contrast to other elements with children, for example attributes on a class, where the context menu allows adding AND managing children (which seems more intuitive).
of course this second point is a UX issue not an actual issue, so it could also be further discussed and if it really needs to be changed / updated, that can happen via a subsequent PR.
p.s. in addition to these issues, one of the tests is still failing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok all the previous issues are nicely resolved and the tests are passing, manual testing also seems to be fine with the pools and lanes, etc.
This PR intends to add support for pools and swimlanes to the BPMN diagram type.
Checklist
Motivation and Context
Pools are swimlanes are central components of the BPMN standard, allowing to model activities of different operators and their exchanges.
Description
Pools are added to the BPMN diagram type as a new entity type with the ability to add swimlane within it.
Steps for Testing
Test Coverage
Screenshots
Example of a BPMN diagram with a pool with multiple swimlanes
Example of the update dialog of the pool that allows inserting additional swimlanes