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/META-INF/MANIFEST.MF b/org.eclipse.wb.core/META-INF/MANIFEST.MF index f2bdc1ecf..dc7e1954e 100644 --- a/org.eclipse.wb.core/META-INF/MANIFEST.MF +++ b/org.eclipse.wb.core/META-INF/MANIFEST.MF @@ -491,8 +491,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/tree/policies/LayoutEditPolicy.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/tree/policies/LayoutEditPolicy.java index 563776ada..27ee865f1 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 @@ -16,7 +16,6 @@ import org.eclipse.wb.gef.core.policies.ILayoutRequestValidator; import org.eclipse.wb.gef.core.requests.CreateRequest; import org.eclipse.wb.gef.core.requests.PasteRequest; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.draw2d.geometry.Point; import org.eclipse.draw2d.geometry.Rectangle; @@ -29,6 +28,7 @@ import org.eclipse.gef.editpolicies.AbstractEditPolicy; import org.eclipse.gef.requests.ChangeBoundsRequest; import org.eclipse.gef.requests.DropRequest; +import org.eclipse.gef.ui.parts.TreeViewer; 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/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 a4ea83283..000000000 --- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/TreeViewer.java +++ /dev/null @@ -1,192 +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.draw2d.geometry.Point; -import org.eclipse.gef.EditDomain; -import org.eclipse.gef.EditPart; -import org.eclipse.gef.TreeEditPart; -import org.eclipse.gef.editparts.RootTreeEditPart; -import org.eclipse.gef.ui.parts.AbstractEditPartViewer; -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.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 TreeEventManager m_eventManager; - - public TreeViewer() { - // create root EditPart - RootTreeEditPart m_rootEditPart = new RootTreeEditPart(); - setRootEditPart(m_rootEditPart); - } - - @Override - public Control createControl(Composite parent) { - // create widget - Tree tree = new Tree(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); - setControl(tree); - return tree; - } - - @Override - protected void hookControl() { - if (getControl() == null) { - return; - } - // handle SWT events - m_eventManager = new TreeEventManager(getControl(), this); - // handle selection events - synchronizeSelection(); - ((RootTreeEditPart) getRootEditPart()).setWidget(getControl()); - super.hookControl(); - } - - @Override - protected void unhookControl() { - super.unhookControl(); - ((RootTreeEditPart) getRootEditPart()).setWidget(null); - } - - //////////////////////////////////////////////////////////////////////////// - // - // Access - // - //////////////////////////////////////////////////////////////////////////// - - @Override - public Tree getControl() { - return (Tree) super.getControl(); - } - - /** - * 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); - } - - //////////////////////////////////////////////////////////////////////////// - // - // 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 - getControl().addSelectionListener(new SelectionListener() { - @Override - public void widgetSelected(SelectionEvent e) { - // prepare selected EditPart's - EditPart[] selection; - { - TreeItem[] items = getControl().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(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 - getControl().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 = getControl().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 = getControl().getItem(new org.eclipse.swt.graphics.Point(location.x, location.y)); - if (item == null) { - result = getRootEditPart(); - } else { - result = (EditPart) item.getData(); - } - // apply conditional - while (result != null) { - if (conditional == null || conditional.evaluate(result)) { - return result; - } - result = result.getParent(); - } - 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 477312ebb..000000000 --- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/dnd/TreeDropListener.java +++ /dev/null @@ -1,337 +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.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.gef.requests.ChangeBoundsRequest; -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; - } - - @Override - public void drop(DropTargetEvent event) { - m_currentEvent = event; - List models = getModels(getDragSource()); - eraseTargetFeedback(); - updateTargetRequest(); - updateTargetEditPart(); - updateTargetRequestAfter(); - try { - executeCommand(); - } finally { - clearState(); - } - resetSelectionFromModels(models); - } - - private void clearState() { - eraseTargetFeedback(); - m_currentEvent = null; - m_request = null; - m_target = null; - } - - private List getDragSource() { - return m_viewer.getSelectedEditParts(); - } - - private List getModels(List editParts) { - List models = new ArrayList<>(); - for (EditPart editPart : editParts) { - models.add(editPart.getModel()); - } - return models; - } - - /** - * Selection {@link EditPart} by model's. - */ - private void resetSelectionFromModels(List models) { - if (!models.isEmpty()) { - // prepare new EditPart's - List newEditParts = new ArrayList<>(); - for (Object model : models) { - EditPart newEditPart = m_viewer.getEditPartRegistry().get(model); - newEditParts.add(newEditPart); - } - // set new selection - m_viewer.setSelection(new StructuredSelection(newEditParts)); - } - } - - //////////////////////////////////////////////////////////////////////////// - // - // Request - // - //////////////////////////////////////////////////////////////////////////// - private ChangeBoundsRequest m_request; - - /** - * Lazily creates and returns the request used when communicating with the target editpart. - */ - private ChangeBoundsRequest getTargetRequest() { - if (m_request == null) { - m_request = new ChangeBoundsRequest(RequestConstants.REQ_MOVE); - m_request.setEditParts(getDragSource()); - } - return m_request; - } - - /** - * Sets the location of the request. - */ - private void updateTargetRequest() { - ChangeBoundsRequest request = getTargetRequest(); - request.setLocation(getDropLocation()); - } - - /** - * Sets the type of the request. - */ - private void updateTargetRequestAfter() { - ChangeBoundsRequest request = getTargetRequest(); - if (getDragSource().get(0).getParent() == m_target) { - request.setType(RequestConstants.REQ_MOVE); - } else { - request.setType(RequestConstants.REQ_ADD); - } - } - - //////////////////////////////////////////////////////////////////////////// - // - // Target - // - //////////////////////////////////////////////////////////////////////////// - /** - * Sets the target {@link EditPart}. - */ - private void setTargetEditPart(EditPart target) { - if (m_target != target) { - if (m_target != null) { - eraseTargetFeedback(); - } - m_target = target; - } - } - - /** - * Updates the target {@link EditPart}. The target is updated by using the target conditional and - * the target request. - */ - private void updateTargetEditPart() { - Point location = getDropLocation(); - Collection editParts = includeChildren(getDragSource()); - EditPart editPart = - m_viewer.findObjectAtExcluding( - location, - Collections.emptyList(), - getTargetingConditional(editParts)); - if (editPart != null) { - editPart = editPart.getTargetEditPart(getTargetRequest()); - } - setTargetEditPart(editPart); - } - - /** - * Returns the current x, y *absolute* position of the mouse cursor. - */ - private Point getDropLocation() { - DropTarget target = (DropTarget) m_currentEvent.widget; - org.eclipse.swt.graphics.Point location = - target.getControl().toControl(m_currentEvent.x, m_currentEvent.y); - return new Point(location); - } - - /** - * Returns the conditional object used for obtaining the target editpart from the viewer. By - * default, a conditional is returned that tests whether an editpart at the current mouse location - * indicates a target for the operation's request, using - * {@link EditPart#getTargetEditPart(Request)}. If null is returned, then the - * conditional fails, and the search continues. - */ - private Conditional getTargetingConditional(Collection exclude) { - return editPart -> !exclude.contains(editPart) && editPart.getTargetEditPart(getTargetRequest()) != null; - } - - private static Set includeChildren(List parts) { - Set result = new HashSet<>(); - for (EditPart editPart : parts) { - result.add(editPart); - result.addAll(includeChildren(editPart.getChildren())); - } - return result; - } - - //////////////////////////////////////////////////////////////////////////// - // - // Command - // - //////////////////////////////////////////////////////////////////////////// - private Command m_command; - - /** - * Execute the currently active command. - */ - private void executeCommand() { - if (m_command != null) { - try { - m_viewer.getEditDomain().getCommandStack().execute(m_command); - } finally { - setCommand(null); - } - } - } - - /** - * Sets the currently active command. - */ - private void setCommand(Command command) { - m_command = command; - m_currentEvent.detail = m_command == null ? DND.DROP_NONE : DND.DROP_MOVE; - } - - /** - * Updates currently command. - */ - private void updateCommand() { - setCommand(getCommand()); - } - - /** - * Returns a new, updated command based on the tools current properties. - */ - private Command getCommand() { - if (m_target != null) { - return m_target.getCommand(getTargetRequest()); - } - return null; - } - - //////////////////////////////////////////////////////////////////////////// - // - // Feedback - // - //////////////////////////////////////////////////////////////////////////// - private boolean m_isShowingFeedback; - - /** - * Asks the target editpart to show target feedback and sets the target feedback flag. - */ - private void showTargetFeedback() { - if (m_target != null) { - m_target.showTargetFeedback(getTargetRequest()); - } - // - m_isShowingFeedback = true; - } - - /** - * Asks the current target editpart to erase target feedback using the target request. If target - * feedback is not being shown, this method does nothing and returns. Otherwise, the target - * feedback flag is reset to false, and the target editpart is asked to erase target feedback. - * This methods should rarely be overridden. - */ - private void eraseTargetFeedback() { - if (m_isShowingFeedback) { - m_isShowingFeedback = false; - // - if (m_target != null) { - m_target.eraseTargetFeedback(getTargetRequest()); - } - } - } -} \ No newline at end of file diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/dnd/TreeTransfer.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/dnd/TreeTransfer.java deleted file mode 100644 index 4e12574ec..000000000 --- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/dnd/TreeTransfer.java +++ /dev/null @@ -1,59 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2011 Google, Inc. - * - * 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.swt.dnd.ByteArrayTransfer; -import org.eclipse.swt.dnd.TransferData; - -import org.apache.commons.lang3.ArrayUtils; - -/** - * Implementation of {@link ByteArrayTransfer} for tree elements. - * - * @author lobas_av - * @coverafe gef.tree - */ -public final class TreeTransfer extends ByteArrayTransfer { - public static final TreeTransfer INSTANCE = new TreeTransfer(); - private static final String TYPE_NAME = "Tree GEF tranfser"; - private static final int TYPE_ID = registerType(TYPE_NAME); - - //////////////////////////////////////////////////////////////////////////// - // - // Transfer - // - //////////////////////////////////////////////////////////////////////////// - @Override - protected int[] getTypeIds() { - return new int[]{TYPE_ID}; - } - - @Override - protected String[] getTypeNames() { - return new String[]{TYPE_NAME}; - } - - //////////////////////////////////////////////////////////////////////////// - // - // ByteArrayTransfer - // - //////////////////////////////////////////////////////////////////////////// - @Override - protected void javaToNative(Object object, TransferData transferData) { - } - - @Override - protected Object nativeToJava(TransferData transferData) { - return ArrayUtils.EMPTY_BYTE_ARRAY; - } -} \ No newline at end of file diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/policies/AutoExpandEditPolicy.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/policies/AutoExpandEditPolicy.java index 5b90e81b2..e802e9d51 100644 --- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/policies/AutoExpandEditPolicy.java +++ b/org.eclipse.wb.core/src-gef/org/eclipse/wb/internal/gef/tree/policies/AutoExpandEditPolicy.java @@ -14,7 +14,6 @@ import org.eclipse.wb.core.gef.policy.PolicyUtils; import org.eclipse.wb.gef.core.requests.PasteRequest; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.draw2d.geometry.Point; import org.eclipse.gef.EditPart; @@ -24,6 +23,7 @@ import org.eclipse.gef.TreeEditPart; import org.eclipse.gef.editpolicies.AbstractEditPolicy; import org.eclipse.gef.requests.DropRequest; +import org.eclipse.gef.ui.parts.TreeViewer; import org.eclipse.swt.widgets.Tree; import org.eclipse.swt.widgets.TreeItem; diff --git a/org.eclipse.wb.core/src/org/eclipse/wb/core/gefTree/part/ObjectEditPart.java b/org.eclipse.wb.core/src/org/eclipse/wb/core/gefTree/part/ObjectEditPart.java index 2fea5d932..c3df45daa 100644 --- a/org.eclipse.wb.core/src/org/eclipse/wb/core/gefTree/part/ObjectEditPart.java +++ b/org.eclipse.wb.core/src/org/eclipse/wb/core/gefTree/part/ObjectEditPart.java @@ -18,13 +18,13 @@ import org.eclipse.wb.core.model.broadcast.ObjectEventListener; import org.eclipse.wb.gef.tree.DesignTreeEditPart; import org.eclipse.wb.internal.core.utils.execution.ExecutionUtils; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.wb.internal.gef.tree.policies.AutoExpandEditPolicy; import org.eclipse.wb.internal.gef.tree.policies.SelectionEditPolicy; import org.eclipse.gef.EditPart; import org.eclipse.gef.EditPolicy; import org.eclipse.gef.TreeEditPart; +import org.eclipse.gef.ui.parts.TreeViewer; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.swt.graphics.Image; @@ -79,7 +79,6 @@ public void refreshed() throws Exception { setSelectionIfAllEditParts(m_delayedSelectionObjects); m_delayedSelectionObjects = null; } - viewer.setSelectionToTreeWidget(); } finally { tree.setRedraw(true); } diff --git a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/DesignComponentsComposite.java b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/DesignComponentsComposite.java index 8afeac9a5..60360a7fe 100644 --- a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/DesignComponentsComposite.java +++ b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/DesignComponentsComposite.java @@ -18,9 +18,9 @@ import org.eclipse.wb.internal.core.editor.Messages; import org.eclipse.wb.internal.core.editor.structure.components.ComponentsTreePage; import org.eclipse.wb.internal.core.editor.structure.property.ComponentsPropertiesPage; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.gef.EditPartViewer; +import org.eclipse.gef.ui.parts.TreeViewer; import org.eclipse.jface.viewers.ISelection; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.FillLayout; diff --git a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/components/ComponentsTreePage.java b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/components/ComponentsTreePage.java index cb06593f4..ef8b0ba28 100644 --- a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/components/ComponentsTreePage.java +++ b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/components/ComponentsTreePage.java @@ -26,10 +26,10 @@ import org.eclipse.wb.internal.core.utils.execution.ExecutionUtils; import org.eclipse.wb.internal.core.utils.gef.EditPartsSelectionProvider; import org.eclipse.wb.internal.core.utils.ui.UiUtils; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.gef.EditPart; import org.eclipse.gef.EditPartViewer; +import org.eclipse.gef.ui.parts.TreeViewer; import org.eclipse.jface.action.Action; import org.eclipse.jface.action.IAction; import org.eclipse.jface.action.IToolBarManager; diff --git a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/components/ComponentsTreeWrapper.java b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/components/ComponentsTreeWrapper.java index fced8b992..dcb1e35cb 100644 --- a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/components/ComponentsTreeWrapper.java +++ b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/editor/structure/components/ComponentsTreeWrapper.java @@ -15,9 +15,9 @@ import org.eclipse.wb.internal.core.utils.gef.EditPartsContentProvider; import org.eclipse.wb.internal.core.utils.gef.EditPartsSelectionProvider; import org.eclipse.wb.internal.core.utils.ui.UiUtils; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.gef.EditPart; +import org.eclipse.gef.ui.parts.TreeViewer; import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.swt.events.TreeEvent; diff --git a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory.java b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory.java index 4bab57d38..66a3fca61 100644 --- a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory.java +++ b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/gefTree/EditPartFactory.java @@ -24,9 +24,9 @@ import org.eclipse.wb.internal.core.model.menu.IMenuItemInfo; import org.eclipse.wb.internal.core.model.menu.MenuObjectInfoUtils; import org.eclipse.wb.internal.core.utils.external.ExternalFactoriesHelper; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.gef.EditPart; +import org.eclipse.gef.ui.parts.TreeViewer; import java.util.List; diff --git a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/gefTree/part/ObjectContainerEditPart.java b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/gefTree/part/ObjectContainerEditPart.java index 4b1783794..2373c00af 100644 --- a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/gefTree/part/ObjectContainerEditPart.java +++ b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/gefTree/part/ObjectContainerEditPart.java @@ -13,9 +13,9 @@ package org.eclipse.wb.internal.core.gefTree.part; import org.eclipse.wb.internal.core.model.ObjectInfoContainer; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.gef.editparts.AbstractTreeEditPart; +import org.eclipse.gef.ui.parts.TreeViewer; import java.util.Collections; import java.util.List; diff --git a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/model/ObjectInfoContainer.java b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/model/ObjectInfoContainer.java index 483bbcefc..0678472bb 100644 --- a/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/model/ObjectInfoContainer.java +++ b/org.eclipse.wb.core/src/org/eclipse/wb/internal/core/model/ObjectInfoContainer.java @@ -13,7 +13,8 @@ package org.eclipse.wb.internal.core.model; import org.eclipse.wb.core.model.ObjectInfo; -import org.eclipse.wb.internal.gef.tree.TreeViewer; + +import org.eclipse.gef.ui.parts.TreeViewer; /** * Container for an {@link ObjectInfo} to be used as input for the diff --git a/org.eclipse.wb.tests/src/org/eclipse/wb/tests/designer/editor/ComponentsTreePageTest.java b/org.eclipse.wb.tests/src/org/eclipse/wb/tests/designer/editor/ComponentsTreePageTest.java index c3c5265a3..2f26bd4e2 100644 --- a/org.eclipse.wb.tests/src/org/eclipse/wb/tests/designer/editor/ComponentsTreePageTest.java +++ b/org.eclipse.wb.tests/src/org/eclipse/wb/tests/designer/editor/ComponentsTreePageTest.java @@ -18,7 +18,6 @@ import org.eclipse.wb.internal.core.editor.structure.components.ComponentsTreePage; import org.eclipse.wb.internal.core.utils.execution.ExecutionUtils; import org.eclipse.wb.internal.gef.core.CancelOperationError; -import org.eclipse.wb.internal.gef.tree.dnd.TreeDropListener; import org.eclipse.wb.internal.swing.model.component.ComponentInfo; import org.eclipse.wb.internal.swing.model.component.ContainerInfo; import org.eclipse.wb.internal.swing.model.layout.FlowLayoutInfo; @@ -115,7 +114,7 @@ public Test() { } /** - * There was problem: after some exception during drag operation {@link TreeDropListener} had + * There was problem: after some exception during drag operation {@code TreeDropListener} had * state (list of {@link EditPart} to drag) remembered since last operation. So, when we reparse * source again and try to perform some other drag this state was not updated - instead it was * used to create {@link Command} and created weird effect during its execution. diff --git a/org.eclipse.wb.tests/src/org/eclipse/wb/tests/designer/editor/DesignerEditorTestCase.java b/org.eclipse.wb.tests/src/org/eclipse/wb/tests/designer/editor/DesignerEditorTestCase.java index 97d71d2b1..e25523ff4 100644 --- a/org.eclipse.wb.tests/src/org/eclipse/wb/tests/designer/editor/DesignerEditorTestCase.java +++ b/org.eclipse.wb.tests/src/org/eclipse/wb/tests/designer/editor/DesignerEditorTestCase.java @@ -35,7 +35,6 @@ import org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils; import org.eclipse.wb.internal.core.utils.state.EditorState; import org.eclipse.wb.internal.gef.graphical.GraphicalViewer; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.wb.internal.rcp.databinding.DatabindingsProvider; import org.eclipse.wb.internal.rcp.databinding.model.widgets.WidgetsObserveTypeContainer; import org.eclipse.wb.tests.designer.TestUtils; @@ -47,6 +46,7 @@ import org.eclipse.core.resources.IFile; import org.eclipse.draw2d.geometry.Dimension; import org.eclipse.gef.EditPart; +import org.eclipse.gef.ui.parts.TreeViewer; import org.eclipse.jdt.core.ICompilationUnit; import org.eclipse.jdt.core.IPackageFragment; import org.eclipse.jface.action.IAction; diff --git a/org.eclipse.wb.tests/src/org/eclipse/wb/tests/gef/TreeRobot.java b/org.eclipse.wb.tests/src/org/eclipse/wb/tests/gef/TreeRobot.java index d8d845251..1cc57e555 100644 --- a/org.eclipse.wb.tests/src/org/eclipse/wb/tests/gef/TreeRobot.java +++ b/org.eclipse.wb.tests/src/org/eclipse/wb/tests/gef/TreeRobot.java @@ -17,7 +17,6 @@ import org.eclipse.wb.internal.core.utils.execution.ExecutionUtils; import org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils; import org.eclipse.wb.internal.core.utils.ui.UiUtils; -import org.eclipse.wb.internal.gef.tree.TreeViewer; import org.eclipse.wb.tests.designer.tests.DesignerTestCase; import org.eclipse.draw2d.geometry.Point; @@ -26,6 +25,7 @@ import org.eclipse.gef.Tool; import org.eclipse.gef.TreeEditPart; import org.eclipse.gef.commands.Command; +import org.eclipse.gef.ui.parts.TreeViewer; import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.swt.dnd.DND; import org.eclipse.swt.dnd.DropTarget; diff --git a/org.eclipse.wb.tests/src/org/eclipse/wb/tests/gef/TreeToolTest.java b/org.eclipse.wb.tests/src/org/eclipse/wb/tests/gef/TreeToolTest.java index a51f1aa53..e4e117891 100644 --- a/org.eclipse.wb.tests/src/org/eclipse/wb/tests/gef/TreeToolTest.java +++ b/org.eclipse.wb.tests/src/org/eclipse/wb/tests/gef/TreeToolTest.java @@ -18,7 +18,6 @@ import org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils; import org.eclipse.wb.internal.core.utils.ui.UiUtils; import org.eclipse.wb.internal.gef.core.EditDomain; -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.editparts.AbstractTreeEditPart; import org.eclipse.gef.requests.SelectionRequest; +import org.eclipse.gef.ui.parts.TreeViewer; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.TreeItem;