Class ScaleControls
java.lang.Object
com.inductiveautomation.ignition.designer.designable.controls.AbstractSelectionControls
com.inductiveautomation.ignition.designer.designable.controls.ScaleControls
- All Implemented Interfaces:
ISelectionControl,Iterable<IHandle>
- Direct Known Subclasses:
LinkControls,WindowScaleControls
Concrete implementation of ISelectionControls that provides the standard stretch/resize handles around a component
selection
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classprotected classA highlight that displays a little cross where the logical resize anchor is placed.protected classprotected classprotected classprotected classprotected classprotected classprotected classprotected class -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ShapePaintstatic final ShapePaintprotected boolean -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddragEnd()protected voidprotected voidprotected voidvoidinitialize(DesignPanel panel, DesignableContainer container, DesignableDelegate delegate, List<JComponent> selection) protected IHandlenewHandle(int side) static Rectangle2Dscale(DesignPanel panel, DesignableDelegate delegate, List<JComponent> selection, Rectangle2D originalRectangle, Map<JComponent, Rectangle2D> originalBounds, Map<JComponent, Rectangle2D> scaledBounds, Point2D anchor, Point2D handle, Point2D drag, int side, boolean restrict, boolean snap, boolean keepAspectRatio) Methods inherited from class com.inductiveautomation.ignition.designer.designable.controls.AbstractSelectionControls
getBoundingRect, getInsets, iterator, paintBackground, selectionRect, uninstallMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
dragging
protected boolean dragging -
DEFAULT_NORMAL_PAINT
-
DEFAULT_HOVER_PAINT
-
-
Constructor Details
-
ScaleControls
public ScaleControls()
-
-
Method Details
-
initialize
public void initialize(DesignPanel panel, DesignableContainer container, DesignableDelegate delegate, List<JComponent> selection) - Specified by:
initializein interfaceISelectionControl- Overrides:
initializein classAbstractSelectionControls
-
initHandles
protected void initHandles() -
newHandle
-
dragStart
protected void dragStart() -
dragEnd
protected void dragEnd() -
dragged
-
scale
public static Rectangle2D scale(DesignPanel panel, DesignableDelegate delegate, List<JComponent> selection, Rectangle2D originalRectangle, Map<JComponent, Rectangle2D> originalBounds, Map<JComponent, Rectangle2D> scaledBounds, Point2D anchor, Point2D handle, Point2D drag, int side, boolean restrict, boolean snap, boolean keepAspectRatio) - Parameters:
originalRectangle- The overall bounding rectangle of all selected objects at the beginning of the scale operation. In unzoomed coordinates.originalBounds- The original bounds of each selected object, relative to the interaction layer in unzoomed coordinates.scaledBounds- A map containing the last set of scaled bounds for each object in unzoomed coordinates. On the first scale of a series, this should be a clone of the originalBounds.anchor- The anchor point for the scale - this is the 'fixed point'handle- The handle point that the drag point is compared against.drag- The point that the current drag is at.side- The side code that the anchor resides on.restrict- Whether or not to restrict to parent boundssnap- Whether or not to consider snapping to gridkeepAspectRatio- Whether or not to maintain original aspect ratios
-