Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -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
Expand All @@ -19,8 +19,8 @@
import org.eclipse.wb.draw2d.FigureUtils;
import org.eclipse.wb.draw2d.Layer;
import org.eclipse.wb.gef.core.IEditPartViewer;
import org.eclipse.wb.gef.core.policies.DesignEditPolicy;
import org.eclipse.wb.gef.graphical.GraphicalEditPart;
import org.eclipse.wb.gef.graphical.policies.GraphicalEditPolicy;
import org.eclipse.wb.internal.core.DesignerPlugin;
import org.eclipse.wb.internal.core.gef.tools.TabOrderContainerRequest;
import org.eclipse.wb.internal.core.model.property.Property;
Expand All @@ -41,7 +41,7 @@
* @author lobas_av
* @coverage core.gef.policy
*/
public final class TabOrderContainerEditPolicy extends GraphicalEditPolicy {
public final class TabOrderContainerEditPolicy extends DesignEditPolicy {
public static final Request TAB_ORDER_REQUEST = new Request("tab order");
public static final String TAB_CONTAINER_ROLE = "tab container role";
public static final String REQ_CONTAINER_TAB_ORDER = "container tab order";
Expand Down
65 changes: 65 additions & 0 deletions org.eclipse.wb.core/.settings/.api_filters
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,56 @@
</message_arguments>
</filter>
</resource>
<resource path="src/org/eclipse/wb/core/gef/policy/PolicyUtils.java" type="org.eclipse.wb.core.gef.policy.PolicyUtils">
<filter comment="Restructuring of internal GraphicalEditPart" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.PolicyUtils"/>
<message_argument value="eraseBorderTargetFeedback(GraphicalEditPart)"/>
</message_arguments>
</filter>
<filter comment="Restructuring of internal GraphicalEditPolicy" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.PolicyUtils"/>
<message_argument value="eraseBorderTargetFeedback(GraphicalEditPolicy)"/>
</message_arguments>
</filter>
<filter comment="Restructuring of internal GraphicalEditPart" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.PolicyUtils"/>
<message_argument value="getAbsoluteBounds(GraphicalEditPart)"/>
</message_arguments>
</filter>
<filter comment="Restructuring of internal GraphicalEditPart" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.PolicyUtils"/>
<message_argument value="showBorderTargetFeedback(GraphicalEditPart)"/>
</message_arguments>
</filter>
<filter comment="Restructuring of internal GraphicalEditPolicy" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.PolicyUtils"/>
<message_argument value="showBorderTargetFeedback(GraphicalEditPolicy)"/>
</message_arguments>
</filter>
<filter comment="Restructuring of internal GraphicalEditPolicy" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.PolicyUtils"/>
<message_argument value="translateAbsoluteToFeedback(GraphicalEditPolicy, Translatable)"/>
</message_arguments>
</filter>
<filter comment="Restructuring of internal GraphicalEditPart" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.PolicyUtils"/>
<message_argument value="translateAbsoluteToModel(GraphicalEditPart, Translatable)"/>
</message_arguments>
</filter>
<filter comment="Restructuring of internal GraphicalEditPolicy" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.PolicyUtils"/>
<message_argument value="translateModelToFeedback(GraphicalEditPolicy, Translatable)"/>
</message_arguments>
</filter>
</resource>
<resource path="src/org/eclipse/wb/core/gef/policy/helpers/BroadcastListenerHelper.java" type="org.eclipse.wb.core.gef.policy.helpers.BroadcastListenerHelper">
<filter comment="Method marked for removal" id="643846161">
<message_arguments>
Expand Down Expand Up @@ -54,4 +104,19 @@
</message_arguments>
</filter>
</resource>
<resource path="src/org/eclipse/wb/core/gef/policy/layout/grid/AbstractGridHelper.java" type="org.eclipse.wb.core.gef.policy.layout.grid.AbstractGridHelper">
<filter comment="Restructuring of internal GraphicalEditPolicy" id="338792546">
<message_arguments>
<message_argument value="org.eclipse.wb.core.gef.policy.layout.grid.AbstractGridHelper"/>
<message_argument value="getHost()"/>
</message_arguments>
</filter>
<filter comment="Constructor marked for removal" id="643850349">
<message_arguments>
<message_argument value="GraphicalEditPolicy"/>
<message_argument value="AbstractGridHelper"/>
<message_argument value="AbstractGridHelper(GraphicalEditPolicy, boolean)"/>
</message_arguments>
</filter>
</resource>
</component>
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,22 @@

import org.eclipse.wb.core.gef.policy.IDesignEditPolicy;
import org.eclipse.wb.core.gef.policy.IEditPolicyListener;
import org.eclipse.wb.draw2d.Layer;
import org.eclipse.wb.gef.core.IEditPartViewer;
import org.eclipse.wb.gef.graphical.policies.GraphicalEditPolicy;

import org.eclipse.draw2d.EventListenerList;
import org.eclipse.draw2d.IFigure;
import org.eclipse.gef.EditPart;
import org.eclipse.gef.EditPolicy;
import org.eclipse.gef.LayerConstants;
import org.eclipse.gef.Request;
import org.eclipse.gef.editparts.LayerManager;

import java.util.Iterator;

@SuppressWarnings("removal")
public class DesignEditPolicy extends org.eclipse.wb.gef.core.policies.EditPolicy implements IDesignEditPolicy, IRequestEditPolicy {
public class DesignEditPolicy extends GraphicalEditPolicy implements IDesignEditPolicy, IRequestEditPolicy {
////////////////////////////////////////////////////////////////////////////
//
// Instance fields
Expand Down Expand Up @@ -143,4 +149,61 @@ private void fireDeactivate() {
listeners.forEachRemaining(listener -> listener.deactivatePolicy(this));
}
}

////////////////////////////////////////////////////////////////////////////
//
// Model Utils
//
////////////////////////////////////////////////////////////////////////////
/**
* Convenience method to return the host's model.
*/
protected final Object getHostModel() {
return getHost().getModel();
}

////////////////////////////////////////////////////////////////////////////
//
// Layer's
//
////////////////////////////////////////////////////////////////////////////
/**
* Obtains the specified layer.
*/
@Override
protected final Layer getLayer(Object layer) {
if (isOnMenuLayer()) {
if (LayerConstants.HANDLE_LAYER.equals(layer)) {
layer = IEditPartViewer.MENU_HANDLE_LAYER;
} else if (IEditPartViewer.HANDLE_LAYER_STATIC.equals(layer)) {
layer = IEditPartViewer.MENU_HANDLE_LAYER_STATIC;
} else if (LayerConstants.FEEDBACK_LAYER.equals(layer)) {
layer = IEditPartViewer.MENU_FEEDBACK_LAYER;
}
}
return (Layer) super.getLayer(layer);
}

/**
* @return the {@link Layer} for {@link IEditPartViewer#FEEDBACK_LAYER}.
*/
@Override
protected Layer getFeedbackLayer() {
return getLayer(LayerConstants.FEEDBACK_LAYER);
}

/**
* @return <code>true</code> if host {@link EditPart} is located on
* {@link IEditPartViewer#MENU_PRIMARY_LAYER}.
*/
private boolean isOnMenuLayer() {
Layer menuPrimaryLayer = (Layer) LayerManager.Helper.find(getHost()).getLayer(IEditPartViewer.MENU_PRIMARY_LAYER);
for (IFigure figure = getHostFigure(); figure != null; figure = figure.getParent()) {
if (figure == menuPrimaryLayer) {
return true;
}
}
// no, probably normal PRIMARY_LAYER
return false;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@
*******************************************************************************/
package org.eclipse.wb.gef.core.policies;

import org.eclipse.gef.editpolicies.AbstractEditPolicy;
import org.eclipse.gef.editpolicies.GraphicalEditPolicy;

/**
* @author lobas_av
* @coverage gef.core
* @deprecated Extend {@link AbstractEditPolicy} directly.
* @deprecated Extend {@link GraphicalEditPolicy} directly.
*/
@Deprecated(since = "2026-06", forRemoval = true)
public abstract class EditPolicy extends AbstractEditPolicy {
public abstract class EditPolicy extends GraphicalEditPolicy {
// Empty
}
Original file line number Diff line number Diff line change
@@ -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
Expand All @@ -12,19 +12,26 @@
*******************************************************************************/
package org.eclipse.wb.gef.graphical;

import org.eclipse.wb.gef.core.EditPart;
import org.eclipse.wb.gef.core.tools.DragEditPartTracker;
import org.eclipse.wb.gef.core.tools.Tool;
import org.eclipse.wb.internal.core.utils.reflect.ReflectionUtils;

import org.eclipse.draw2d.EventListenerList;
import org.eclipse.draw2d.IFigure;
import org.eclipse.gef.ConnectionEditPart;
import org.eclipse.gef.EditPart;
import org.eclipse.gef.EditPartViewer;
import org.eclipse.gef.NodeListener;
import org.eclipse.gef.Request;

import java.util.Collections;
import java.util.List;

/**
* @author lobas_av
* @coverage gef.graphical
*/
public abstract class GraphicalEditPart extends EditPart {
public abstract class GraphicalEditPart extends org.eclipse.wb.gef.core.EditPart implements org.eclipse.gef.GraphicalEditPart {
private IFigure m_figure;

////////////////////////////////////////////////////////////////////////////
Expand Down Expand Up @@ -108,6 +115,41 @@ protected boolean removeSelfVisual() {
return false;
}

@Override
@SuppressWarnings("unchecked")
public List<? extends GraphicalEditPart> getChildren() {
return (List<? extends GraphicalEditPart>) super.getChildren();
}

@Override
public void addNodeListener(NodeListener listener) {
getEventListenerList().addListener(NodeListener.class, listener);
}

@Override
public void removeNodeListener(NodeListener listener) {
getEventListenerList().removeListener(NodeListener.class, listener);
}

private EventListenerList getEventListenerList() {
return (EventListenerList) ReflectionUtils.getFieldObject(this, "eventListeners");
}

@Override
public List<? extends ConnectionEditPart> getSourceConnections() {
return Collections.emptyList();
}

@Override
public List<? extends ConnectionEditPart> getTargetConnections() {
return Collections.emptyList();
}

@Override
public void setLayoutConstraint(EditPart child, IFigure figure, Object constraint) {
figure.getParent().setConstraint(figure, constraint);
}

////////////////////////////////////////////////////////////////////////////
//
// DragTracking
Expand Down
Original file line number Diff line number Diff line change
@@ -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
Expand All @@ -12,10 +12,13 @@
*******************************************************************************/
package org.eclipse.wb.gef.graphical.policies;

import org.eclipse.wb.gef.core.policies.DesignEditPolicy;

import org.eclipse.draw2d.IFigure;
import org.eclipse.draw2d.geometry.Dimension;
import org.eclipse.draw2d.geometry.Point;
import org.eclipse.draw2d.geometry.Rectangle;
import org.eclipse.gef.editpolicies.GraphicalEditPolicy;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
Expand All @@ -32,7 +35,7 @@
* @author scheglov_ke
* @coverage gef.graphical
*/
public abstract class DirectTextEditPolicy extends GraphicalEditPolicy {
public abstract class DirectTextEditPolicy extends DesignEditPolicy {
////////////////////////////////////////////////////////////////////////////
//
// Access
Expand Down
Loading
Loading