Class DesignPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JScrollPane
-
- com.inductiveautomation.ignition.designer.designable.DesignPanel
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
,javax.swing.ScrollPaneConstants
- Direct Known Subclasses:
SfcDesignPanel
public class DesignPanel extends javax.swing.JScrollPane
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JScrollPane
javax.swing.JScrollPane.AccessibleJScrollPane, javax.swing.JScrollPane.ScrollBar
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description protected com.inductiveautomation.ignition.designer.designable.DesignPanel.DesignableContainerLayer
baseLayer
protected javax.swing.JComponent
component
protected DesignableContainer
designable
protected com.inductiveautomation.ignition.designer.designable.DesignPanel.GuideAddingListener
guideAddingListener
protected InteractionLayer
interactionLayer
protected com.inductiveautomation.ignition.designer.designable.DesignPanel.LayerParent
layerParent
static int
SNAP_THRESHOLD
static int
SNAP_TO_ANCHORS_MASK
static int
SNAP_TO_GRID_MASK
static int
SNAP_TO_GUIDES_MASK
protected AbstractDesignableWorkspace
workspace
-
Fields inherited from class javax.swing.JScrollPane
columnHeader, horizontalScrollBar, horizontalScrollBarPolicy, lowerLeft, lowerRight, rowHeader, upperLeft, upperRight, verticalScrollBar, verticalScrollBarPolicy, viewport
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface javax.swing.ScrollPaneConstants
COLUMN_HEADER, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER, HORIZONTAL_SCROLLBAR_POLICY, LOWER_LEADING_CORNER, LOWER_LEFT_CORNER, LOWER_RIGHT_CORNER, LOWER_TRAILING_CORNER, ROW_HEADER, UPPER_LEADING_CORNER, UPPER_LEFT_CORNER, UPPER_RIGHT_CORNER, UPPER_TRAILING_CORNER, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED, VERTICAL_SCROLLBAR_NEVER, VERTICAL_SCROLLBAR_POLICY, VIEWPORT
-
-
Constructor Summary
Constructors Constructor Description DesignPanel(AbstractDesignableWorkspace workspace, DesignableContainer designable)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addGuide(Guide g)
DesignableContainer
getDesignable()
javax.swing.JComponent
getDesignableComponent()
int
getGuideCount()
java.util.List<Guide>
getGuides()
InteractionLayer
getInteractionLayer()
AbstractDesignableWorkspace
getWorkspace()
int
getZoom()
protected void
initRulers()
void
removeGuide(Guide g)
void
setZoom(int zoom)
int
snapGrid(int i)
Snaps an integer to be aligned with even grid spacing, if grid-snap is onjava.awt.geom.Point2D
snapLocation(java.awt.geom.Rectangle2D rect, int userMask, java.awt.geom.Point2D point)
Applies snap logic to the location of a rectangle.double
snapPoint(double point, char axis)
Snaps a point, much likesnapPoint(int, char)
, except that this function uses floating point coordinates.int
snapPoint(int point, char axis)
Snaps a point to both guides and grid, (depending on settings for each).void
snapPoint(java.awt.geom.Point2D point)
void
snapRectangle(java.awt.geom.Rectangle2D rect, int userMask)
Snaps all 4 sides of a rectangle independently using guides and/or grid, depending on settingsint
unzoom(int point)
java.awt.geom.Point2D
unzoom(java.awt.geom.Point2D point)
java.awt.geom.Rectangle2D
unzoom(java.awt.geom.Rectangle2D rect)
java.awt.Point
unzoom(java.awt.Point point)
java.awt.geom.Rectangle2D
unzoom(java.awt.Rectangle rect)
double
zoom(double point)
int
zoom(int point)
java.awt.Dimension
zoom(java.awt.Dimension dim)
java.awt.geom.Point2D
zoom(java.awt.geom.Point2D point)
Converts a point in logical space to a point in zoomed(2d) spacejava.awt.geom.Rectangle2D
zoom(java.awt.geom.Rectangle2D rect)
java.awt.Point
zoom(java.awt.Point point)
java.awt.Rectangle
zoom(java.awt.Rectangle rect)
java.awt.Shape
zoom(java.awt.Shape shape)
void
zoomIn()
void
zoomOut()
-
Methods inherited from class javax.swing.JScrollPane
createHorizontalScrollBar, createVerticalScrollBar, createViewport, getAccessibleContext, getColumnHeader, getCorner, getHorizontalScrollBar, getHorizontalScrollBarPolicy, getRowHeader, getUI, getUIClassID, getVerticalScrollBar, getVerticalScrollBarPolicy, getViewport, getViewportBorder, getViewportBorderBounds, isValidateRoot, isWheelScrollingEnabled, paramString, setColumnHeader, setColumnHeaderView, setComponentOrientation, setCorner, setHorizontalScrollBar, setHorizontalScrollBarPolicy, setLayout, setRowHeader, setRowHeaderView, setUI, setVerticalScrollBar, setVerticalScrollBarPolicy, setViewport, setViewportBorder, setViewportView, setWheelScrollingEnabled, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
SNAP_THRESHOLD
public static final int SNAP_THRESHOLD
- See Also:
- Constant Field Values
-
SNAP_TO_GRID_MASK
public static final int SNAP_TO_GRID_MASK
- See Also:
- Constant Field Values
-
SNAP_TO_GUIDES_MASK
public static final int SNAP_TO_GUIDES_MASK
- See Also:
- Constant Field Values
-
SNAP_TO_ANCHORS_MASK
public static final int SNAP_TO_ANCHORS_MASK
- See Also:
- Constant Field Values
-
workspace
protected AbstractDesignableWorkspace workspace
-
designable
protected DesignableContainer designable
-
component
protected javax.swing.JComponent component
-
layerParent
protected com.inductiveautomation.ignition.designer.designable.DesignPanel.LayerParent layerParent
-
baseLayer
protected com.inductiveautomation.ignition.designer.designable.DesignPanel.DesignableContainerLayer baseLayer
-
interactionLayer
protected InteractionLayer interactionLayer
-
guideAddingListener
protected com.inductiveautomation.ignition.designer.designable.DesignPanel.GuideAddingListener guideAddingListener
-
-
Constructor Detail
-
DesignPanel
public DesignPanel(AbstractDesignableWorkspace workspace, DesignableContainer designable)
-
-
Method Detail
-
initRulers
protected void initRulers()
-
getZoom
public int getZoom()
-
setZoom
public void setZoom(int zoom)
-
zoomIn
public void zoomIn()
-
zoomOut
public void zoomOut()
-
zoom
public java.awt.Rectangle zoom(java.awt.Rectangle rect)
-
zoom
public java.awt.geom.Rectangle2D zoom(java.awt.geom.Rectangle2D rect)
-
zoom
public java.awt.Shape zoom(java.awt.Shape shape)
-
zoom
public int zoom(int point)
-
zoom
public double zoom(double point)
-
zoom
public java.awt.Point zoom(java.awt.Point point)
-
zoom
public java.awt.geom.Point2D zoom(java.awt.geom.Point2D point)
Converts a point in logical space to a point in zoomed(2d) space
-
zoom
public java.awt.Dimension zoom(java.awt.Dimension dim)
-
unzoom
public java.awt.Point unzoom(java.awt.Point point)
-
unzoom
public java.awt.geom.Point2D unzoom(java.awt.geom.Point2D point)
-
unzoom
public java.awt.geom.Rectangle2D unzoom(java.awt.geom.Rectangle2D rect)
-
unzoom
public java.awt.geom.Rectangle2D unzoom(java.awt.Rectangle rect)
-
unzoom
public int unzoom(int point)
-
getGuideCount
public int getGuideCount()
-
getGuides
public java.util.List<Guide> getGuides()
-
addGuide
public void addGuide(Guide g)
-
removeGuide
public void removeGuide(Guide g)
-
snapLocation
public java.awt.geom.Point2D snapLocation(java.awt.geom.Rectangle2D rect, int userMask, java.awt.geom.Point2D point)
Applies snap logic to the location of a rectangle. Returns a delta to apply to the rectangle as a Point of (dX,dY)- Parameters:
point
- An existing point object to modify and return. May be null.
-
snapGrid
public int snapGrid(int i)
Snaps an integer to be aligned with even grid spacing, if grid-snap is on
-
snapPoint
public int snapPoint(int point, char axis)
Snaps a point to both guides and grid, (depending on settings for each).- Parameters:
point
- The value of the edge to (potentially) snapaxis
- either 'y', 'x'. For top and bottom edges, use 'y', for left and right edges, use 'x'.
-
snapPoint
public double snapPoint(double point, char axis)
Snaps a point, much likesnapPoint(int, char)
, except that this function uses floating point coordinates. If a point isn't snapped, then the original value is returned.
-
snapPoint
public void snapPoint(java.awt.geom.Point2D point)
-
snapRectangle
public void snapRectangle(java.awt.geom.Rectangle2D rect, int userMask)
Snaps all 4 sides of a rectangle independently using guides and/or grid, depending on settings
-
getWorkspace
public AbstractDesignableWorkspace getWorkspace()
-
getDesignable
public DesignableContainer getDesignable()
-
getDesignableComponent
public javax.swing.JComponent getDesignableComponent()
-
getInteractionLayer
public InteractionLayer getInteractionLayer()
-
-