/******************************************************************************* * Copyright (c) 2016 Weasis Team and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Nicolas Roduit - initial API and implementation *******************************************************************************/ package org.weasis.core.ui.model.graphic; import java.awt.geom.Point2D; import org.weasis.core.ui.model.utils.Draggable; import org.weasis.core.ui.util.MouseEventDouble; public interface DragGraphic extends Graphic { public static final Boolean DEFAULT_RESIZE_OR_MOVING = Boolean.FALSE; Boolean getResizingOrMoving(); void setResizeOrMoving(Boolean value); void buildShape(MouseEventDouble mouseEvent); void forceToAddPoints(Integer fromPtIndex); Point2D removeHandlePoint(Integer index, MouseEventDouble mouseEvent); void moveMouseOverHandlePoint(Integer handlePtIndex, MouseEventDouble event); Integer moveAndResizeOnDrawing(Integer handlePointIndex, Double deltaX, Double deltaY, MouseEventDouble mouseEvent); Draggable createMoveDrag(); Draggable createDragLabelSequence(); Draggable createResizeDrag(); Draggable createResizeDrag(Integer i); @Override DragGraphic copy(); }