Class 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
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • 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
    • 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 on
      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.
      double snapPoint​(double point, char axis)
      Snaps a point, much like snapPoint(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 settings
      int 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) space
      java.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
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • 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
      • guideAddingListener

        protected com.inductiveautomation.ignition.designer.designable.DesignPanel.GuideAddingListener guideAddingListener
    • 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) snap
        axis - 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 like snapPoint(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
      • getDesignableComponent

        public javax.swing.JComponent getDesignableComponent()