Open grexe opened 4 years ago
Thanks for sharing this idea!
Mind you sharing a sketch, a screencast or a tool which is doing it the way you want it to see? It would help to understand your idea more in detail.
I was searching for something of that kind, but only found a commercial eclipse plugin so far, will do! To add more detail, it would also be very helpful if I could collapse expanded subprocesses. At the moment, you can only create an expanded subprocess and it always stays expanded, but the point of this element is actually to support collapsing it, as also mentioned Bernd's BPMN cookbook ("Praxishandbuch BPMN", 6th ed., p79,165)
just found a related discussion on this very feature in the bpmnio forum.
We removed the support for collapsing sub-processes recently: https://github.com/zeebe-io/zeebe-modeler/issues/94
This had several reasons, you can read about this inside the attached issue, or in this blog post. So we don't recommend this feature, but it would be doable via a plugin, cf. https://github.com/bpmn-io/bpmn-js-collapse-subprocess
Is your feature request related to a problem? Please describe.
When modelling subprocesses, it's not possible to model the subprocess in place, but only as an abstract bounding box, so it's easy to loose context between the actual subprocess and the containing parent process.
Describe the solution you'd like
I'd like to be able to model the subprocess in place, but for better visibility, zoom into my subprocess, so I don't see the entire parent process, only related input+output ports.
This way I could quickly dive in and out of my subprocess, like it's also common in other graphical editors, to model the details but quickly get back to the outer process. So I won't loose the connection and always keep the context in mind.
For additional usability, a breadcrumbs bar could be used to indicate the hierarchy inside the model, which would be a great help for more complex process diagrams.
Describe alternatives you've considered
Currently, the subprocess is completely decoupled from the parent process, and you have to be careful e.g. to keep IDs in sync. You have several tabs open for each sub process, and for the parent processes, which can quickly get cluttered.