diff --git a/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/BindingElementsComposite.java b/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/BindingElementsComposite.java
index aa04755b6..71ff85de8 100644
--- a/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/BindingElementsComposite.java
+++ b/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/BindingElementsComposite.java
@@ -19,20 +19,16 @@
import org.eclipse.wb.internal.core.databinding.Messages;
import org.eclipse.wb.internal.core.databinding.model.IBindingInfo;
import org.eclipse.wb.internal.core.databinding.model.IDatabindingsProvider;
+import org.eclipse.wb.internal.core.editor.TreeTransfer;
import org.eclipse.wb.internal.core.utils.execution.ExecutionUtils;
import org.eclipse.wb.internal.core.utils.ui.GridDataFactory;
import org.eclipse.wb.internal.core.utils.ui.GridLayoutFactory;
import org.eclipse.wb.internal.core.utils.ui.TableFactory;
-import org.eclipse.wb.internal.gef.tree.dnd.TreeTransfer;
import org.eclipse.jface.dialogs.IDialogSettings;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ArrayContentProvider;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.ViewerDropAdapter;
@@ -47,9 +43,7 @@
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.MenuItem;
import org.eclipse.swt.widgets.Shell;
@@ -144,27 +138,18 @@ public BindingElementsComposite(Composite parent,
m_bindingViewer.setContentProvider(new ArrayContentProvider());
m_databindingsProvider.configureBindingViewer(settings, m_bindingViewer);
// viewer events
- m_bindingViewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
- @Override
- public void selectionChanged(SelectionChangedEvent event) {
- IStructuredSelection selection = (IStructuredSelection) event.getSelection();
- handleBindingSelection(selection);
- }
+ m_bindingViewer.addPostSelectionChangedListener(event -> {
+ IStructuredSelection selection = (IStructuredSelection) event.getSelection();
+ handleBindingSelection(selection);
});
- m_bindingViewer.addDoubleClickListener(new IDoubleClickListener() {
- @Override
- public void doubleClick(DoubleClickEvent event) {
- if (m_editBindingListener != null && !UiUtils.isEmpty(m_bindingViewer.getSelection())) {
- m_editBindingListener.widgetSelected(null);
- }
+ m_bindingViewer.addDoubleClickListener(event -> {
+ if (m_editBindingListener != null && !UiUtils.isEmpty(m_bindingViewer.getSelection())) {
+ m_editBindingListener.widgetSelected(null);
}
});
- m_bindingViewer.getControl().addListener(SWT.KeyDown, new Listener() {
- @Override
- public void handleEvent(Event event) {
- if (event.character == SWT.DEL && !UiUtils.isEmpty(m_bindingViewer.getSelection())) {
- deleteBindind();
- }
+ m_bindingViewer.getControl().addListener(SWT.KeyDown, event -> {
+ if (event.character == SWT.DEL && !UiUtils.isEmpty(m_bindingViewer.getSelection())) {
+ deleteBindind();
}
});
setupDragAndDrop();
diff --git a/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/editor/contentproviders/ChooseClassAndPropertiesUiContentProvider.java b/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/editor/contentproviders/ChooseClassAndPropertiesUiContentProvider.java
index 614ed4bf8..cb071027a 100644
--- a/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/editor/contentproviders/ChooseClassAndPropertiesUiContentProvider.java
+++ b/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/editor/contentproviders/ChooseClassAndPropertiesUiContentProvider.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2011, 2024 Google, Inc.
+ * Copyright (c) 2011, 2026 Google, Inc. and others.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
@@ -14,6 +14,7 @@
import org.eclipse.wb.internal.core.databinding.Messages;
import org.eclipse.wb.internal.core.databinding.ui.UiUtils;
+import org.eclipse.wb.internal.core.editor.TreeTransfer;
import org.eclipse.wb.internal.core.utils.ui.GridDataFactory;
import org.eclipse.wb.internal.core.utils.ui.GridLayoutFactory;
diff --git a/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/editor/contentproviders/TreeTransfer.java b/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/editor/TreeTransfer.java
similarity index 88%
rename from org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/editor/contentproviders/TreeTransfer.java
rename to org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/editor/TreeTransfer.java
index c5940c034..ed4b3bcdf 100644
--- a/org.eclipse.wb.core.databinding/src/org/eclipse/wb/internal/core/databinding/ui/editor/contentproviders/TreeTransfer.java
+++ b/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/editor/TreeTransfer.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2011 Google, Inc.
+ * Copyright (c) 2011, 2026 Google, Inc. and others.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
@@ -10,7 +10,7 @@
* Contributors:
* Google, Inc. - initial API and implementation
*******************************************************************************/
-package org.eclipse.wb.internal.core.databinding.ui.editor.contentproviders;
+package org.eclipse.wb.internal.core.editor;
import org.eclipse.swt.dnd.ByteArrayTransfer;
import org.eclipse.swt.dnd.TransferData;
@@ -23,7 +23,7 @@
* @author lobas_av
* @coverage bindings.ui
*/
-final class TreeTransfer extends ByteArrayTransfer {
+public final class TreeTransfer extends ByteArrayTransfer {
public static final TreeTransfer INSTANCE = new TreeTransfer();
private static final String TYPE_NAME = "Tree content provider bindings tranfser";
private static final int TYPE_ID = registerType(TYPE_NAME);
diff --git a/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gef/tools/TabOrderTool.java b/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gef/tools/TabOrderTool.java
index 60e331a04..8e8248f66 100644
--- a/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gef/tools/TabOrderTool.java
+++ b/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gef/tools/TabOrderTool.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2011, 2025 Google, Inc. and others.
+ * Copyright (c) 2011, 2026 Google, Inc. and others.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
@@ -195,8 +195,7 @@ protected boolean handleButtonDown(int button) {
@Override
protected void updateTargetUnderMouse() {
// find on clickable layer
- EditPart editPart =
- getCurrentViewer().findObjectAtExcluding(
+ EditPart editPart = ((IEditPartViewer) getCurrentViewer()).findObjectAtExcluding(
getLocation(),
getExclusionSet(),
getTargetingConditional(),
diff --git a/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory2.java b/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory2.java
index d8999b882..892ecbb2c 100644
--- a/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory2.java
+++ b/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory2.java
@@ -19,9 +19,9 @@
import org.eclipse.wb.internal.core.gefTree.part.FlowContainerGroupEditPart;
import org.eclipse.wb.internal.core.model.nonvisual.AbstractArrayObjectInfo;
import org.eclipse.wb.internal.core.model.nonvisual.FlowContainerGroupInfo;
-import org.eclipse.wb.internal.gef.tree.TreeViewer;
import org.eclipse.gef.EditPart;
+import org.eclipse.gef.ui.parts.TreeViewer;
/**
* Generic implementation of {@link IEditPartFactory} for {@link TreeViewer} that redirects
diff --git a/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/model/property/order/ReorderDialog.java b/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/model/property/order/ReorderDialog.java
index e7eec12c6..675be7af1 100644
--- a/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/model/property/order/ReorderDialog.java
+++ b/org.eclipse.wb.core.java/src/org/eclipse/wb/internal/core/model/property/order/ReorderDialog.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2011, 2023 Google, Inc.
+ * Copyright (c) 2011, 2026 Google, Inc. and others.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
@@ -15,13 +15,13 @@
import org.eclipse.wb.core.model.AbstractComponentInfo;
import org.eclipse.wb.core.model.JavaInfo;
import org.eclipse.wb.internal.core.DesignerPlugin;
+import org.eclipse.wb.internal.core.editor.TreeTransfer;
import org.eclipse.wb.internal.core.model.ModelMessages;
import org.eclipse.wb.internal.core.model.util.ObjectsLabelProvider;
import org.eclipse.wb.internal.core.utils.ui.GridDataFactory;
import org.eclipse.wb.internal.core.utils.ui.GridLayoutFactory;
import org.eclipse.wb.internal.core.utils.ui.TableFactory;
import org.eclipse.wb.internal.core.utils.ui.dialogs.ResizableDialog;
-import org.eclipse.wb.internal.gef.tree.dnd.TreeTransfer;
import org.eclipse.jface.viewers.ArrayContentProvider;
import org.eclipse.jface.viewers.CheckboxTableViewer;
diff --git a/org.eclipse.wb.core/META-INF/MANIFEST.MF b/org.eclipse.wb.core/META-INF/MANIFEST.MF
index 81f025aa1..9bc547f27 100644
--- a/org.eclipse.wb.core/META-INF/MANIFEST.MF
+++ b/org.eclipse.wb.core/META-INF/MANIFEST.MF
@@ -495,8 +495,6 @@ Export-Package: org.eclipse.wb.core.branding,
org.eclipse.wb.swing,
org.eclipse.wb.swt",
org.eclipse.wb.internal.gef.graphical;x-friends:="org.eclipse.wb.tests,org.eclipse.wb.core.java",
- org.eclipse.wb.internal.gef.tree;x-friends:="org.eclipse.wb.tests,org.eclipse.wb.core.java",
- org.eclipse.wb.internal.gef.tree.dnd;x-friends:="org.eclipse.wb.core.databinding,org.eclipse.wb.core.java,org.eclipse.wb.tests",
org.eclipse.wb.internal.gef.tree.policies;x-internal:=true,
org.eclipse.wb.internal.gef.tree.tools;x-internal:=true
Import-Package: org.apache.commons.collections4;version="[4.4.0,5.0.0)",
diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/Tool.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/Tool.java
index 1cf461de8..ba5e06bbd 100644
--- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/Tool.java
+++ b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/Tool.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2011, 2025 Google, Inc. and others.
+ * Copyright (c) 2011, 2026 Google, Inc. and others.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
@@ -69,13 +69,6 @@ public final boolean isActive() {
return getFlag(FLAG_ACTIVE);
}
- /**
- * Get {@link IEditPartViewer}.
- */
- public final IEditPartViewer getCurrentViewer() {
- return (IEditPartViewer) super.getCurrentViewer();
- }
-
/**
* Returns the {@link EditDomain}.
*/
diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/DesignTreeEditPart.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/DesignTreeEditPart.java
index 0259615d5..29636b6f0 100644
--- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/DesignTreeEditPart.java
+++ b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/DesignTreeEditPart.java
@@ -19,6 +19,8 @@
import org.eclipse.gef.EditPolicy;
import org.eclipse.gef.Request;
import org.eclipse.gef.commands.Command;
+import org.eclipse.gef.editparts.AbstractTreeEditPart;
+import org.eclipse.swt.widgets.TreeItem;
import java.util.ArrayList;
import java.util.List;
@@ -28,8 +30,12 @@
*
* @see {@link RequestProcessor}
*/
-@SuppressWarnings("removal")
-public abstract class DesignTreeEditPart extends TreeEditPart {
+public abstract class DesignTreeEditPart extends AbstractTreeEditPart {
+
+ @Override
+ public TreeItem getWidget() {
+ return (TreeItem) super.getWidget();
+ }
////////////////////////////////////////////////////////////////////////////
//
diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/TreeEditPart.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/TreeEditPart.java
deleted file mode 100644
index 5210882d9..000000000
--- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/TreeEditPart.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011, 2026 Google, Inc. and others.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License 2.0 which is available at
- * https://www.eclipse.org/legal/epl-2.0.
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- * Google, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wb.gef.tree;
-
-import org.eclipse.wb.gef.core.tools.Tool;
-import org.eclipse.wb.internal.gef.tree.tools.DoubleClickEditPartTracker;
-
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.Request;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.swt.widgets.Widget;
-
-import java.util.List;
-
-/**
- * @author lobas_av
- * @coverage gef.tree
- * @deprecated Cast to {@link org.eclipse.gef.TreeEditPart TreeEditPart}
- * directly or extend {@link AbstractTreeEditPart}.
- */
-@SuppressWarnings("removal")
-@Deprecated(forRemoval = true, since = "2026-06")
-public abstract class TreeEditPart extends org.eclipse.wb.gef.core.EditPart implements org.eclipse.gef.TreeEditPart {
- private TreeItem m_widget;
- private boolean m_expandedShouldRestore;
- private boolean m_expanded;
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Widget
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public TreeItem getWidget() {
- return m_widget;
- }
-
- @Override
- public void setWidget(Widget widget) {
- m_widget = (TreeItem) widget;
- //
- List extends EditPart> children = getChildren();
- if (m_widget == null) {
- for (EditPart editPart : children) {
- TreeEditPart treePart = (TreeEditPart) editPart;
- treePart.setWidget(null);
- }
- } else {
- m_widget.setData(this);
- m_widget.addDisposeListener(new DisposeListener() {
- @Override
- public void widgetDisposed(DisposeEvent e) {
- m_expandedShouldRestore = true;
- m_expanded = m_widget.getExpanded();
- }
- });
- }
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // EditPart
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- protected void addChildVisual(EditPart childPart, int index) {
- TreeEditPart treePart = (TreeEditPart) childPart;
- treePart.setWidget(new TreeItem(getWidget(), SWT.NONE, index));
- }
-
- @Override
- protected void removeChildVisual(EditPart childPart) {
- TreeEditPart treePart = (TreeEditPart) childPart;
- if (treePart.getWidget() != null) {
- treePart.getWidget().dispose();
- treePart.setWidget(null);
- }
- }
-
- @Override
- protected void updateChildVisual(org.eclipse.wb.gef.core.EditPart childPart, int index) {
- TreeEditPart treePart = (TreeEditPart) childPart;
- if (treePart.getWidget() == null) {
- treePart.setWidget(new TreeItem(getWidget(), SWT.NONE, index));
- }
- }
-
- @Override
- public void refresh() {
- super.refresh();
- if (m_expandedShouldRestore) {
- m_expandedShouldRestore = false;
- TreeItem widget = getWidget();
- if (widget != null && !widget.isDisposed()) {
- widget.setExpanded(m_expanded);
- }
- }
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Policy
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- protected void createEditPolicies() {
- //installEditPolicy("TreeToolAdapterEditPolicy", new TreeToolAdapterEditPolicy());
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // DragTracking
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public Tool getDragTracker(Request request) {
- return new DoubleClickEditPartTracker(this);
- }
-}
\ No newline at end of file
diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/policies/LayoutEditPolicy.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/policies/LayoutEditPolicy.java
index 2d6593431..7e0e13c2c 100644
--- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/policies/LayoutEditPolicy.java
+++ b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/policies/LayoutEditPolicy.java
@@ -18,7 +18,6 @@
import org.eclipse.wb.gef.core.requests.CreateRequest;
import org.eclipse.wb.gef.core.requests.PasteRequest;
import org.eclipse.wb.internal.core.EnvironmentUtils;
-import org.eclipse.wb.internal.gef.tree.TreeViewer;
import org.eclipse.draw2d.geometry.Point;
import org.eclipse.draw2d.geometry.Rectangle;
@@ -30,6 +29,7 @@
import org.eclipse.gef.commands.Command;
import org.eclipse.gef.editpolicies.AbstractEditPolicy;
import org.eclipse.gef.requests.DropRequest;
+import org.eclipse.gef.ui.parts.TreeViewer;
import org.eclipse.swt.dnd.DND;
import org.eclipse.swt.widgets.Tree;
import org.eclipse.swt.widgets.TreeItem;
diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/RootEditPart.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/RootEditPart.java
deleted file mode 100644
index c2cc6ec9d..000000000
--- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/RootEditPart.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011, 2026 Google, Inc. and others.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License 2.0 which is available at
- * https://www.eclipse.org/legal/epl-2.0.
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- * Google, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wb.internal.gef.tree;
-
-import org.eclipse.wb.gef.core.IEditPartViewer;
-import org.eclipse.wb.gef.tree.DesignTreeEditPart;
-
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPartViewer;
-import org.eclipse.gef.TreeEditPart;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-
-/**
- *
- * @author lobas_av
- * @coverage gef.tree
- */
-public class RootEditPart extends DesignTreeEditPart implements org.eclipse.gef.RootEditPart {
- private IEditPartViewer m_viewer;
- private TreeEditPart m_contentEditPart;
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // EditPart
- //
- ////////////////////////////////////////////////////////////////////////////
- /**
- * Returns the root's {@link EditPartViewer}.
- */
- @Override
- public IEditPartViewer getViewer() {
- return m_viewer;
- }
-
- @Override
- public void setViewer(EditPartViewer viewer) {
- m_viewer = (IEditPartViewer) viewer;
- }
-
- @Override
- protected void addChildVisual(org.eclipse.gef.EditPart childPart, int index) {
- m_contentEditPart.setWidget(new TreeItem(getTreeControl(), SWT.NONE));
- }
-
- private Tree getTreeControl() {
- return (Tree) m_viewer.getControl();
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // IRootEditPart
- //
- ////////////////////////////////////////////////////////////////////////////
-
- /**
- * Returns the content {@link EditPart}.
- */
- @Override
- public EditPart getContents() {
- return m_contentEditPart;
- }
-
- /**
- * Sets the content {@link EditPart}. A IRootEditPart only has a single child, called its
- * contents.
- */
- @Override
- public void setContents(org.eclipse.gef.EditPart contentEditPart) {
- if (m_contentEditPart != null) {
- // remove content
- removeChild(m_contentEditPart);
- }
- //
- m_contentEditPart = (TreeEditPart) contentEditPart;
- //
- if (m_contentEditPart != null) {
- addChild(m_contentEditPart, -1);
- }
- }
-}
\ No newline at end of file
diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/TreeEventManager.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/TreeEventManager.java
deleted file mode 100644
index c16b0a058..000000000
--- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/TreeEventManager.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011, 2026 Google, Inc. and others.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License 2.0 which is available at
- * https://www.eclipse.org/legal/epl-2.0.
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- * Google, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wb.internal.gef.tree;
-
-import org.eclipse.wb.internal.gef.tree.dnd.TreeDropListener;
-import org.eclipse.wb.internal.gef.tree.dnd.TreeTransfer;
-
-import org.eclipse.gef.EditDomain;
-import org.eclipse.gef.EditPartViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.DragSource;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.events.MouseMoveListener;
-import org.eclipse.swt.events.MouseTrackListener;
-import org.eclipse.swt.widgets.Tree;
-
-/**
- * @author lobas_av
- * @coverage gef.tree
- */
-final class TreeEventManager
-implements
-KeyListener,
-MouseListener,
-MouseMoveListener,
-MouseTrackListener {
- private final Tree m_tree;
- private final EditPartViewer m_viewer;
- private EditDomain m_domain;
- final TreeDropListener m_dropListener;
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Constructor
- //
- ////////////////////////////////////////////////////////////////////////////
- public TreeEventManager(Tree tree, EditPartViewer viewer) {
- m_tree = tree;
- m_viewer = viewer;
- // add listeners
- m_tree.addKeyListener(this);
- m_tree.addMouseListener(this);
- m_tree.addMouseMoveListener(this);
- m_tree.addMouseTrackListener(this);
- // add DND listeners
- new DragSource(m_tree, DND.DROP_MOVE).setTransfer(new Transfer[]{TreeTransfer.INSTANCE});
- m_dropListener = new TreeDropListener(m_viewer);
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Access
- //
- ////////////////////////////////////////////////////////////////////////////
- public void setDomain(EditDomain domain) {
- m_domain = domain;
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // KeyListener
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public void keyPressed(KeyEvent event) {
- if (m_domain != null) {
- m_domain.keyDown(event, m_viewer);
- }
- }
-
- @Override
- public void keyReleased(KeyEvent event) {
- if (m_domain != null) {
- m_domain.keyUp(event, m_viewer);
- }
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // MouseListener
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public void mouseDoubleClick(MouseEvent event) {
- if (m_domain != null) {
- m_domain.mouseDoubleClick(event, m_viewer);
- }
- }
-
- @Override
- public void mouseDown(MouseEvent event) {
- // OK, send to domain
- if (m_domain != null) {
- m_domain.mouseDown(event, m_viewer);
- }
- }
-
- @Override
- public void mouseUp(MouseEvent event) {
- if (m_domain != null) {
- m_domain.mouseUp(event, m_viewer);
- }
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // MouseMoveListener
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public void mouseMove(MouseEvent event) {
- if (m_domain != null) {
- if ((event.stateMask & SWT.BUTTON_MASK) != 0) {
- m_domain.mouseDrag(event, m_viewer);
- } else {
- m_domain.mouseMove(event, m_viewer);
- }
- }
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // MouseTrackListener
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public void mouseEnter(MouseEvent event) {
- if (m_domain != null) {
- m_domain.viewerEntered(event, m_viewer);
- }
- }
-
- @Override
- public void mouseExit(MouseEvent event) {
- if (m_domain != null) {
- m_domain.viewerExited(event, m_viewer);
- }
- }
-
- @Override
- public void mouseHover(MouseEvent event) {
- }
-}
\ No newline at end of file
diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/TreeViewer.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/TreeViewer.java
deleted file mode 100644
index 063993f41..000000000
--- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/TreeViewer.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011, 2026 Google, Inc. and others.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License 2.0 which is available at
- * https://www.eclipse.org/legal/epl-2.0.
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- * Google, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wb.internal.gef.tree;
-
-import org.eclipse.wb.internal.gef.core.AbstractEditPartViewer;
-
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.gef.EditDomain;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.TreeEditPart;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-/**
- * @author lobas_av
- * @coverage gef.tree
- */
-public class TreeViewer extends AbstractEditPartViewer {
- private Tree m_tree;
- private RootEditPart m_rootEditPart;
- private TreeEventManager m_eventManager;
-
- @Override
- public Control createControl(Composite parent) {
- m_tree = new Tree(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
- // handle SWT events
- m_eventManager = new TreeEventManager(m_tree, this);
- // create root EditPart
- m_rootEditPart = new RootEditPart();
- m_rootEditPart.setViewer(this);
- m_rootEditPart.activate();
- setRootEditPart(m_rootEditPart);
- // handle selection events
- synchronizeSelection();
- return m_tree;
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Access
- //
- ////////////////////////////////////////////////////////////////////////////
-
- /**
- * Returns the SWT Control for this viewer.
- */
- @Override
- public Tree getControl() {
- return m_tree;
- }
-
- /**
- * Returns root {@link EditPart}.
- */
- @Override
- public RootEditPart getRootEditPart() {
- return m_rootEditPart;
- }
-
- /**
- * Sets the {@link EditDomain} for this viewer. The Viewer will route all mouse and
- * keyboard events to the {@link EditDomain}.
- */
- @Override
- public void setEditDomain(EditDomain domain) {
- super.setEditDomain(domain);
- m_eventManager.setDomain(domain);
- }
-
- /**
- * Set the Cursor.
- */
- @Override
- public void setCursor(Cursor cursor) {
- m_tree.setCursor(cursor);
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Selection
- //
- ////////////////////////////////////////////////////////////////////////////
- /**
- * Adds listeners for synchronizing selection between this {@link TreeViewer} and underlying
- * {@link Tree} widget.
- */
- private void synchronizeSelection() {
- final boolean[] inTreeSelectionListener = new boolean[1];
- // listener for Tree widget selection
- m_tree.addSelectionListener(new SelectionListener() {
- @Override
- public void widgetSelected(SelectionEvent e) {
- // prepare selected EditPart's
- EditPart[] selection;
- {
- TreeItem[] items = m_tree.getSelection();
- selection = new EditPart[items.length];
- for (int i = 0; i < selection.length; i++) {
- selection[i] = (EditPart) items[i].getData();
- }
- }
- // set selection in viewer
- try {
- inTreeSelectionListener[0] = true;
- setSelection(new StructuredSelection(selection));
- } finally {
- inTreeSelectionListener[0] = false;
- }
- }
-
- @Override
- public void widgetDefaultSelected(SelectionEvent e) {
- widgetSelected(e);
- }
- });
- // listener for this viewer selection
- addSelectionChangedListener(new ISelectionChangedListener() {
- @Override
- public void selectionChanged(SelectionChangedEvent event) {
- if (!inTreeSelectionListener[0]) {
- setSelectionToTreeWidget();
- }
- }
- });
- }
-
- /**
- * Applies existing selection from this {@link TreeViewer} to underlying {@link Tree} widget.
- */
- public void setSelectionToTreeWidget() {
- // prepare selected TreeItem's
- List treeItems = new ArrayList<>();
- for (EditPart editPart : getSelectedEditParts()) {
- TreeEditPart treeEditPart = (TreeEditPart) editPart;
- treeItems.add((TreeItem) treeEditPart.getWidget());
- }
- // set selection in tree
- m_tree.setSelection(treeItems.toArray(new TreeItem[treeItems.size()]));
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Finding
- //
- ////////////////////////////////////////////////////////////////////////////
- /**
- * Returns null or the {@link EditPart} at the specified location, using
- * the given exclusion set and conditional.
- */
- @Override
- public EditPart findObjectAtExcluding(Point location,
- // TODO Draw2D - Typify once lower bound is 3.22
- @SuppressWarnings("rawtypes") Collection exclude,
- Conditional conditional) {
- // simple check location
- Rectangle clientArea = m_tree.getClientArea();
- if (location.x < 0 || location.y < 0 || location.x > clientArea.width || location.y > clientArea.height) {
- return null;
- }
- // find EditPart
- EditPart result = null;
- TreeItem item = m_tree.getItem(new org.eclipse.swt.graphics.Point(location.x, location.y));
- if (item == null) {
- result = m_rootEditPart;
- } else {
- result = (EditPart) item.getData();
- }
- // apply conditional
- while (result != null) {
- if (conditional == null || conditional.evaluate(result)) {
- return result;
- }
- result = result.getParent();
- }
- return null;
- }
-
- @Override
- public EditPart findObjectAtExcluding(Point location,
- // TODO Draw2D - Typify once lower bound is 3.22
- @SuppressWarnings("rawtypes") Collection exclude,
- Conditional conditional,
- String layer) {
- return null;
- }
-}
\ No newline at end of file
diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/dnd/TreeDropListener.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/dnd/TreeDropListener.java
deleted file mode 100644
index 5fd2da607..000000000
--- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/dnd/TreeDropListener.java
+++ /dev/null
@@ -1,339 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011, 2026 Google, Inc. and others.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License 2.0 which is available at
- * https://www.eclipse.org/legal/epl-2.0.
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- * Google, Inc. - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wb.internal.gef.tree.dnd;
-
-import org.eclipse.wb.gef.core.requests.ChangeBoundsRequest;
-
-import org.eclipse.draw2d.geometry.Point;
-import org.eclipse.gef.EditPart;
-import org.eclipse.gef.EditPartViewer;
-import org.eclipse.gef.EditPartViewer.Conditional;
-import org.eclipse.gef.Request;
-import org.eclipse.gef.RequestConstants;
-import org.eclipse.gef.commands.Command;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.DropTarget;
-import org.eclipse.swt.dnd.DropTargetEvent;
-import org.eclipse.swt.dnd.DropTargetListener;
-import org.eclipse.swt.dnd.Transfer;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-/**
- * @author lobas_av
- * @coverage gef.tree
- */
-public class TreeDropListener implements DropTargetListener {
- private final EditPartViewer m_viewer;
- private DropTargetEvent m_currentEvent;
- private EditPart m_target;
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // Constructor
- //
- ////////////////////////////////////////////////////////////////////////////
- public TreeDropListener(EditPartViewer viewer) {
- m_viewer = viewer;
- // add DND listener
- DropTarget target = new DropTarget(m_viewer.getControl(), DND.DROP_MOVE);
- target.setTransfer(new Transfer[]{TreeTransfer.INSTANCE});
- target.addDropListener(this);
- }
-
- ////////////////////////////////////////////////////////////////////////////
- //
- // DropTargetListener
- //
- ////////////////////////////////////////////////////////////////////////////
- @Override
- public void dragEnter(DropTargetEvent event) {
- m_currentEvent = event;
- }
-
- @Override
- public void dropAccept(DropTargetEvent event) {
- m_currentEvent = event;
- }
-
- @Override
- public void dragLeave(DropTargetEvent event) {
- m_currentEvent = event;
- clearState();
- }
-
- @Override
- public void dragOperationChanged(DropTargetEvent event) {
- m_currentEvent = event;
- eraseTargetFeedback();
- updateTargetRequest();
- updateTargetEditPart();
- updateTargetRequestAfter();
- updateCommand();
- }
-
- @Override
- public void dragOver(DropTargetEvent event) {
- boolean needUpdateFeedback =
- !m_isShowingFeedback || event.x != m_currentEvent.x || event.y != m_currentEvent.y;
- m_currentEvent = event;
- updateTargetRequest();
- updateTargetEditPart();
- updateTargetRequestAfter();
- updateCommand();
- if (needUpdateFeedback) {
- showTargetFeedback();
- }
- m_currentEvent.feedback =
- DND.FEEDBACK_EXPAND | DND.FEEDBACK_SCROLL | getTargetRequest().getDNDFeedback();
- }
-
- @Override
- public void drop(DropTargetEvent event) {
- m_currentEvent = event;
- List