E534 [GEF] Finalize GEF cleanup for the current development cycle by ptziegler · Pull Request #631 · eclipse-windowbuilder/windowbuilder · GitHub
[go: up one dir, main page]

Skip to content

[GEF] Finalize GEF cleanup for the current development cycle #631

Merged
ptziegler merged 5 commits intoeclipse-windowbuilder:masterfrom
ptziegler:gef-cleanup
Nov 12, 2023
Merged

[GEF] Finalize GEF cleanup for the current development cycle #631
ptziegler merged 5 commits intoeclipse-windowbuilder:masterfrom
ptziegler:gef-cleanup

Conversation

@ptziegler
Copy link
Contributor

This change should bring our GEF implementation to a point where it is stable enough for the upcoming release. I've also had a look at continuing my work on our Draw2D code, but those adaptations have to be postponed to the 1.15.

@ptziegler ptziegler added this to the 1.14.0 milestone Nov 11, 2023
@github-actions
Copy link
github-actions bot commented Nov 11, 2023

Unit Test Results

         4 files           4 suites   1h 41m 1s ⏱️
  7 645 tests   7 442 ✔️ 203 💤 0
30 580 runs  29 768 ✔️ 812 💤 0

Results for commit af6c6e3.

♻️ This comment has been updated with latest results.

Both methods are functionally identical. The reason we should use the
latter one is because this method is specified in the EditPart
interface.
This is the way we are supposed to handle those instances for a given
EditPartViewer. Doing so saves us not only a local field but also the
getEditPartByModel() method in the IEditPartViewer interface.
This removes the superfluous IRootContainer interface. Trying to get
root edit part should instead return an instance implementing the
RootEditPart interface.
In order to get the DragTracker of a given EditPart, one can either call
getDrackTracker (GEF) or getDrackTrackerTool(WB). This change refactors
the our code so that only the GEF method remains.
Note that this change requires a noticeable cleanup in our Tool
implementation, in order to make sure that the methods defined by the
Tool interface don't call the implementations of the parent class.
This removes the local fields that store the policies (and keys)
installed for a given edit part. All invocations are forwarded to the
implementation of the parent class.

Note that those methods work on a GEF EditPolicy. To avoid any
incompatibilities, it was required to also remove the local "host" field
of our EditPolicy and rely on the parent implementation here as well.
@ptziegler ptziegler merged commit bec2d26 into eclipse-windowbuilder:master Nov 12, 2023
@ptziegler ptziegler deleted the gef-cleanup branch November 12, 2023 07:23
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

Successfully merging this pull request may close these issues.

1 participant

0