eclipse-sirius / sirius-desktop

Sirius Desktop: desktop-based graphical modelers for dedicated DSLs
https://eclipse.dev/sirius/
Eclipse Public License 2.0
15 stars 11 forks source link

The internal method GMFHelper.getAbsoluteBounds(Node) can be improved for containers with auto-size #426

Open lredor opened 4 months ago

lredor commented 4 months ago

As a reminder, this method attempts to calculate, based on the GMF data, a dimension as close as possible to the dimension that the corresponding Draw2D figure will have.

In several cases, the result is false. This method is used, for example, in the Debug view.

Here are some samples. They should probably be completed with list containers and, Vertical or Horizontal Stack containers. image image image image

lredor commented 4 months ago

The above examples can be used as starting point to check the results. The corresponding project is here: Issue426-ProjectSample.zip.

lredor commented 2 months ago

After several checks, the PR #427 is now OK to be reviewed. To validate this issue, you can check the initial description and the initial project. You can also validate the 24 tests added in org.eclipse.sirius.tests.swtbot.layout.GMFHelperTest. All tests have also been launched locally to detect potential regressions (in progress).