Skip to content

Commit 428b2d3

Browse files
committed
[GEF] Fully migrate to the GEF TreeViewer
This removes our copy of the `TreeViewerEditPart` and `TreeViewer` in favor of the upstream classes. In order to use the GEF viewer directly, a virtual `DesignComponent` edit part needs to be used as contents, holding the `Tree` widget. Otherwise the edit part of the first model is not shown.
1 parent 56b01bd commit 428b2d3

File tree

22 files changed

+109
-630
lines changed

22 files changed

+109
-630
lines changed

org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gef/tools/TabOrderTool.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2011, 2025 Google, Inc. and others.
2+
* Copyright (c) 2011, 2026 Google, Inc. and others.
33
*
44
* This program and the accompanying materials are made available under the
55
* terms of the Eclipse Public License 2.0 which is available at
@@ -195,8 +195,7 @@ protected boolean handleButtonDown(int button) {
195195
@Override
196196
protected void updateTargetUnderMouse() {
197197
// find on clickable layer
198-
EditPart editPart =
199-
getCurrentViewer().findObjectAtExcluding(
198+
EditPart editPart = ((IEditPartViewer) getCurrentViewer()).findObjectAtExcluding(
200199
getLocation(),
201200
getExclusionSet(),
202201
getTargetingConditional(),

org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory2.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@
1919
import org.eclipse.wb.internal.core.gefTree.part.FlowContainerGroupEditPart;
2020
import org.eclipse.wb.internal.core.model.nonvisual.AbstractArrayObjectInfo;
2121
import org.eclipse.wb.internal.core.model.nonvisual.FlowContainerGroupInfo;
22-
import org.eclipse.wb.internal.gef.tree.TreeViewer;
2322

2423
import org.eclipse.gef.EditPart;
24+
import org.eclipse.gef.ui.parts.TreeViewer;
2525

2626
/**
2727
* Generic implementation of {@link IEditPartFactory} for {@link TreeViewer} that redirects

org.eclipse.wb.core/META-INF/MANIFEST.MF

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -495,7 +495,6 @@ Export-Package: org.eclipse.wb.core.branding,
495495
org.eclipse.wb.swing,
496496
org.eclipse.wb.swt",
497497
org.eclipse.wb.internal.gef.graphical;x-friends:="org.eclipse.wb.tests,org.eclipse.wb.core.java",
498-
org.eclipse.wb.internal.gef.tree;x-friends:="org.eclipse.wb.tests,org.eclipse.wb.core.java",
499498
org.eclipse.wb.internal.gef.tree.dnd;x-friends:="org.eclipse.wb.core.databinding,org.eclipse.wb.core.java,org.eclipse.wb.tests",
500499
org.eclipse.wb.internal.gef.tree.policies;x-internal:=true,
501500
org.eclipse.wb.internal.gef.tree.tools;x-internal:=true

org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/Tool.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*******************************************************************************
2-
* Copyright (c) 2011, 2025 Google, Inc. and others.
2+
* Copyright (c) 2011, 2026 Google, Inc. and others.
33
*
44
* This program and the accompanying materials are made available under the
55
* terms of the Eclipse Public License 2.0 which is available at
@@ -69,13 +69,6 @@ public final boolean isActive() {
6969
return getFlag(FLAG_ACTIVE);
7070
}
7171

72-
/**
73-
* Get {@link IEditPartViewer}.
74-
*/
75-
public final IEditPartViewer getCurrentViewer() {
76-
return (IEditPartViewer) super.getCurrentViewer();
77-
}
78-
7972
/**
8073
* Returns the {@link EditDomain}.
8174
*/

org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/DesignTreeEditPart.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
import org.eclipse.gef.EditPolicy;
2020
import org.eclipse.gef.Request;
2121
import org.eclipse.gef.commands.Command;
22+
import org.eclipse.gef.editparts.AbstractTreeEditPart;
23+
import org.eclipse.swt.widgets.TreeItem;
2224

2325
import java.util.ArrayList;
2426
import java.util.List;
@@ -28,8 +30,12 @@
2830
*
2931
* @see {@link RequestProcessor}
3032
*/
31-
@SuppressWarnings("removal")
32-
public abstract class DesignTreeEditPart extends TreeEditPart {
33+
public abstract class DesignTreeEditPart extends AbstractTreeEditPart {
34+
35+
@Override
36+
public TreeItem getWidget() {
37+
return (TreeItem) super.getWidget();
38+
}
3339

3440
////////////////////////////////////////////////////////////////////////////
3541
//

org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/TreeEditPart.java

Lines changed: 0 additions & 132 deletions
This file was deleted.

org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/policies/LayoutEditPolicy.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
import org.eclipse.wb.gef.core.requests.CreateRequest;
1919
import org.eclipse.wb.gef.core.requests.PasteRequest;
2020
import org.eclipse.wb.internal.core.EnvironmentUtils;
21-
import org.eclipse.wb.internal.gef.tree.TreeViewer;
2221

2322
import org.eclipse.draw2d.geometry.Point;
2423
import org.eclipse.draw2d.geometry.Rectangle;
@@ -30,6 +29,7 @@
3029
import org.eclipse.gef.commands.Command;
3130
import org.eclipse.gef.editpolicies.AbstractEditPolicy;
3231
import org.eclipse.gef.requests.DropRequest;
32+
import org.eclipse.gef.ui.parts.TreeViewer;
3333
import org.eclipse.swt.dnd.DND;
3434
import org.eclipse.swt.widgets.Tree;
3535
import org.eclipse.swt.widgets.TreeItem;

org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/RootEditPart.java

Lines changed: 0 additions & 92 deletions
This file was deleted.

0 commit comments

Comments
 (0)