JetBrains / MPS-extensions

MPS-extensions aims to ease language development within MPS.
https://jetbrains.github.io/MPS-extensions/
Apache License 2.0
80 stars 49 forks source link

Add a new flag to pull attribute editors into edge labels #692

Closed HeikoBecker closed 9 months ago

HeikoBecker commented 9 months ago

Previously, if a model node had an attribute annotation and is used as an edge in a diagram, the attribute editor would be added as an external box in the diagram (also see example node R1 in the repo):

image

In this picture, the annotation Component Annotation is floating around in the diagram. Auto-layouting also does not work.

This PR adds support for pulling these annotations into the edge labels:

image

The key difference is that in the new setting, the annotation is part of the edge label and thus also automatically layouted.

To apply this change, the PR adds a new flag pullAnnotations as a boolean query over the node and the editor context. The standard behavior from above is retained by leaving it at the default false value.

This work was done jointly with @slisson.