Steps to recreate:
- Create new sequence diagram
- Add three objects, label them from left to right: 'one', 'two' and 'three'
- Add an activation bar for 'one'
- Add a call from 'one' to 'two'
- Add a call from 'one' to 'three'
Expected Results: The call from 'one' to 'two' is above the call from 'one' to 'three'.
Actual Results: The call from 'one' to 'three' snaps to the top position and there is no way to move it below the call from 'one' to 'two'.
Workaround: Add multiple activation bars to 'one', one bar per call.
When user is creating a new call, use the vertical coordinate of the call line origin relative to existing call line origins to determine the vertical sequence of calls.
Allow vertical resequencing of activation bars by mouse drag. Sequence to be determined by vertical coordinate of dragged bar relative to its peers. Work back through the call sequence from right to left, reevaluating sequence at each object lifeline where an activation bar is present.