Skip to content
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

In SequenceDiagram, observation points do or do not allow Message Creation depending on mouse movement #547

Open
peransin-obeo opened this issue Jan 14, 2025 · 0 comments

Comments

@peransin-obeo
Copy link
Contributor

peransin-obeo commented Jan 14, 2025

When having a observation point on a ExecutionMapping, the user may be forbidden to create a message depending on how the mouse moves over EditParts.

Symptoms:

  • When entering the ExecutionMapping by the Observation Point part, it is possible to start creating a message but not possible to finish the action.
  • When entering the ExecutionMapping by its body then moving to the observation point it is possible to start creating a message and to finish the action.

How to reproduce:

See attached video for mouse event sequence.

With provided interaction.odesign, use it org.eclipse.sirius.sample.interactions.design plugin from code.

  • Creates 2 Lifelines and 1 Execution objects.
  • Select 'read' tool
  • Move to ObservationPoint without moving over neither the lifeline nor the Execution.
  • Click and move to the next lifeline
  • => Mouse cursor indicates no creation is possible.

Modifications of ODesign are:

  • Greater size for ObservationPoint,
  • Additional mapping for 'read' tool including ObservationPoint,
  • Additional layer active by default.

Analysis

ObservationPointEditPart does not contain SequenceSiriusGraphicalNodeEditPolicy Edit Policy unlike ExecutionEditPart (or equivalent).

When selecting the source when creating a message, for nodes, the edit policy sets DRAW2D_EDGE_LOCATION_SOURCE data in CreateRequest.
This data is expected when selecting the target by getConnectionCompleteCommand to create the GEF Command.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant