blob: c0d4cf65a3407de9436680859ec785c412275f69 [file] [log] [blame]
package org.eclipse.jst.pagedesigner.viewer;
import java.util.List;
import org.eclipse.draw2d.geometry.Point;
import org.eclipse.gef.EditPart;
import org.eclipse.gef.editpolicies.GraphicalEditPolicy;
import org.eclipse.gef.requests.ChangeBoundsRequest;
import org.eclipse.jst.pagedesigner.validation.caret.IPositionMediator;
/**
* Abstract parent of all concrete client implmentation of IDropLocationStrategy's
* Clients should sub-class instead of implementing {@link IDropLocationStrategy} directly
* to avoid future API breakage
*
* @author cbateman
*
*/
public abstract class AbstractDropLocationStrategy extends GraphicalEditPolicy implements IDropLocationStrategy
{
public AbstractDropLocationStrategy(EditPart host)
{
setHost(host);
}
public abstract DesignPosition calculateDesignPosition(EditPart host, Point p,
IPositionMediator validator);
public abstract List showTargetFeedback(EditPart host, DesignPosition position, ChangeBoundsRequest request);
}