diff --git a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/AbstractCreationTool.java b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/AbstractCreationTool.java index a344041b9a..fc6aa623f5 100644 --- a/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/AbstractCreationTool.java +++ b/org.eclipse.wb.core/src-gef/org/eclipse/wb/gef/core/tools/AbstractCreationTool.java @@ -75,8 +75,8 @@ protected boolean handleButtonUp(int button) { protected boolean handleMove() { updateTargetRequest(); updateTargetUnderMouse(); - showTargetFeedback(); setCurrentCommand(getCommand()); + showTargetFeedback(); return true; } diff --git a/org.eclipse.wb.core/src/org/eclipse/wb/core/gef/policy/layout/grid/AbstractGridLayoutEditPolicy.java b/org.eclipse.wb.core/src/org/eclipse/wb/core/gef/policy/layout/grid/AbstractGridLayoutEditPolicy.java index fdc870e720..4db828514b 100644 --- a/org.eclipse.wb.core/src/org/eclipse/wb/core/gef/policy/layout/grid/AbstractGridLayoutEditPolicy.java +++ b/org.eclipse.wb.core/src/org/eclipse/wb/core/gef/policy/layout/grid/AbstractGridLayoutEditPolicy.java @@ -35,6 +35,7 @@ import org.eclipse.gef.EditPartListener; import org.eclipse.gef.EditPolicy; import org.eclipse.gef.Request; +import org.eclipse.gef.RequestConstants; import org.eclipse.gef.requests.DropRequest; import org.eclipse.swt.graphics.Color; @@ -121,6 +122,15 @@ private void refreshSelectionGrid() { private static final Color m_badTargetFillColor = new Color(255, 0, 0); private static final Color m_badTargetBorderColor = new Color(255, 192, 192); + @Override + public EditPart getTargetEditPart(Request request) { + if (RequestConstants.REQ_CREATE.equals(request.getType())) { + Point location = PolicyUtils.getAbsoluteLocation(getHost(), (DropRequest) request); + updateGridTarget(location); + } + return super.getTargetEditPart(request); + } + @Override protected final void showLayoutTargetFeedback(Request request) { IGridInfo gridInfo = getGridInfo(); @@ -368,5 +378,5 @@ public String toString() { * @param mouseLocation * the location of mouse in absolute coordinates. */ - protected abstract void updateGridTarget(Point mouseLocation) throws Exception; + protected abstract void updateGridTarget(Point mouseLocation); } diff --git a/org.eclipse.wb.rcp/src/org/eclipse/wb/internal/rcp/gef/policy/forms/layout/grid/TableWrapLayoutEditPolicy.java b/org.eclipse.wb.rcp/src/org/eclipse/wb/internal/rcp/gef/policy/forms/layout/grid/TableWrapLayoutEditPolicy.java index 1a04310b5b..f67c7ac2d1 100644 --- a/org.eclipse.wb.rcp/src/org/eclipse/wb/internal/rcp/gef/policy/forms/layout/grid/TableWrapLayoutEditPolicy.java +++ b/org.eclipse.wb.rcp/src/org/eclipse/wb/internal/rcp/gef/policy/forms/layout/grid/TableWrapLayoutEditPolicy.java @@ -244,7 +244,7 @@ public static int[] getInsertFeedbackParameters(Interval interval, } @Override - protected void updateGridTarget(Point mouseLocation) throws Exception { + protected void updateGridTarget(Point mouseLocation) { m_target = new GridTarget(); // prepare location in model Point location = mouseLocation.getCopy(); diff --git a/org.eclipse.wb.swing.FormLayout/src/org/eclipse/wb/internal/swing/FormLayout/gef/FormLayoutEditPolicy.java b/org.eclipse.wb.swing.FormLayout/src/org/eclipse/wb/internal/swing/FormLayout/gef/FormLayoutEditPolicy.java index 12393b6c03..2e590bee02 100644 --- a/org.eclipse.wb.swing.FormLayout/src/org/eclipse/wb/internal/swing/FormLayout/gef/FormLayoutEditPolicy.java +++ b/org.eclipse.wb.swing.FormLayout/src/org/eclipse/wb/internal/swing/FormLayout/gef/FormLayoutEditPolicy.java @@ -226,7 +226,7 @@ protected void executeEdit() throws Exception { // //////////////////////////////////////////////////////////////////////////// @Override - protected void updateGridTarget(Point mouseLocation) throws Exception { + protected void updateGridTarget(Point mouseLocation) { m_target = new GridTarget(); // mouseLocation = mouseLocation.getCopy(); diff --git a/org.eclipse.wb.swing.MigLayout/src/org/eclipse/wb/internal/swing/MigLayout/gef/MigLayoutEditPolicy.java b/org.eclipse.wb.swing.MigLayout/src/org/eclipse/wb/internal/swing/MigLayout/gef/MigLayoutEditPolicy.java index f9938ab316..70a9776d3b 100644 --- a/org.eclipse.wb.swing.MigLayout/src/org/eclipse/wb/internal/swing/MigLayout/gef/MigLayoutEditPolicy.java +++ b/org.eclipse.wb.swing.MigLayout/src/org/eclipse/wb/internal/swing/MigLayout/gef/MigLayoutEditPolicy.java @@ -323,7 +323,7 @@ public static int[] getInsertFeedbackParameters(Interval interval, } @Override - protected void updateGridTarget(Point mouseLocation) throws Exception { + protected void updateGridTarget(Point mouseLocation) { m_target = new GridTarget(); // prepare location in model Point location = mouseLocation.getCopy(); diff --git a/org.eclipse.wb.swing/src/org/eclipse/wb/internal/swing/gef/policy/layout/gbl/GridBagLayoutEditPolicy.java b/org.eclipse.wb.swing/src/org/eclipse/wb/internal/swing/gef/policy/layout/gbl/GridBagLayoutEditPolicy.java index 4541309b0e..229f6138b8 100644 --- a/org.eclipse.wb.swing/src/org/eclipse/wb/internal/swing/gef/policy/layout/gbl/GridBagLayoutEditPolicy.java +++ b/org.eclipse.wb.swing/src/org/eclipse/wb/internal/swing/gef/policy/layout/gbl/GridBagLayoutEditPolicy.java @@ -180,7 +180,7 @@ protected Command getAddCommand(ChangeBoundsRequest request) { // //////////////////////////////////////////////////////////////////////////// @Override - protected void updateGridTarget(Point mouseLocation) throws Exception { + protected void updateGridTarget(Point mouseLocation) { m_target = new GridTarget(); // prepare location in model Point location = mouseLocation.getCopy(); diff --git a/org.eclipse.wb.swt/src/org/eclipse/wb/internal/swt/gef/policy/layout/grid/GridLayoutEditPolicy.java b/org.eclipse.wb.swt/src/org/eclipse/wb/internal/swt/gef/policy/layout/grid/GridLayoutEditPolicy.java index 183ea12eae..e9c72aea9d 100644 --- a/org.eclipse.wb.swt/src/org/eclipse/wb/internal/swt/gef/policy/layout/grid/GridLayoutEditPolicy.java +++ b/org.eclipse.wb.swt/src/org/eclipse/wb/internal/swt/gef/policy/layout/grid/GridLayoutEditPolicy.java @@ -294,7 +294,7 @@ public static int[] getInsertFeedbackParameters(Interval interval, } @Override - protected void updateGridTarget(Point mouseLocation) throws Exception { + protected void updateGridTarget(Point mouseLocation) { m_target = new GridTarget(); // prepare location in model Point location = mouseLocation.getCopy();