Class AbstractBlockWorkspace
- java.lang.Object
- 
- java.awt.Component
- 
- java.awt.Container
- 
- javax.swing.JComponent
- 
- javax.swing.JTabbedPane
- 
- com.jidesoft.swing.JideTabbedPane
- 
- com.inductiveautomation.ignition.designer.designable.AbstractDesignableWorkspace
- 
- com.inductiveautomation.ignition.designer.blockandconnector.AbstractBlockWorkspace
 
 
 
 
 
 
 
- 
- All Implemented Interfaces:
- java.awt.image.ImageObserver,- java.awt.MenuContainer,- java.io.Serializable,- javax.accessibility.Accessible,- javax.swing.SwingConstants
 - Direct Known Subclasses:
- PipelineBlockWorkspace
 
 public abstract class AbstractBlockWorkspace extends AbstractDesignableWorkspace This workspace is a specialization of AbstractDesignableWorkspace for workspaces that want to use a block-and-connector style of design. The user is able to arrange the blocks and draw connections between them, but the path of the connections is automatically derived. To use this workspace, you'll want to call open(BlockDiagramModel)with your own implementation of aBlockDiagramModel.Sub-classes may override various functions in order to alter or augment functionality: - newConnectionPainter(BlockDiagramModel)Override this to create a- ConnectionPainterto control the visual style of the connections.
- newEdgeRouter(BlockDiagramModel)Override this to provide your own- EdgeRouter, used to create the connection path between any two blocks.
 - See Also:
- Serialized Form
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description protected classAbstractBlockWorkspace.ConnectionToolThis extension of the standard SelectionTool is AnchorPoint aware and is used for creating connections between blocks in addition to selecting and moving blocks around- 
Nested classes/interfaces inherited from class com.jidesoft.swing.JideTabbedPanecom.jidesoft.swing.JideTabbedPane.ColorProvider, com.jidesoft.swing.JideTabbedPane.GradientColorProvider, com.jidesoft.swing.JideTabbedPane.IgnoreableSingleSelectionModel, com.jidesoft.swing.JideTabbedPane.NoFocusButton, com.jidesoft.swing.JideTabbedPane.PageLastFocusTracker, com.jidesoft.swing.JideTabbedPane.TabListCellRenderer
 - 
Nested classes/interfaces inherited from class javax.swing.JTabbedPanejavax.swing.JTabbedPane.AccessibleJTabbedPane, javax.swing.JTabbedPane.ModelListener
 - 
Nested classes/interfaces inherited from class javax.swing.JComponentjavax.swing.JComponent.AccessibleJComponent
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected BasicGridSettingsgridSettings- 
Fields inherited from class com.inductiveautomation.ignition.designer.designable.AbstractDesignableWorkspacecurrentTool, DESIGNABLE_CONTAINER_ICON_KEY, DESIGNTIME_PROPNAME, listeners, log, openContainers, selectedItems, selectionControl, selectionTool
 - 
Fields inherited from class com.jidesoft.swing.JideTabbedPane_focusChangeListener, _tabEditingAllowed, _tabEditValidator, BOLDACTIVETAB_PROPERTY, BOX_STYLE_PROPERTY, BUTTON_CLOSE, BUTTON_EAST, BUTTON_LIST, BUTTON_NORTH, BUTTON_SOUTH, BUTTON_WEST, COLOR_THEME_DEFAULT, COLOR_THEME_OFFICE2003, COLOR_THEME_VSNET, COLOR_THEME_WIN2K, COLOR_THEME_WINXP, GRIPPER_PROPERTY, HIDE_IF_ONE_TAB_PROPERTY, ONENOTE_COLOR_PROVIDER, PROPERTY_COLOR_THEME, PROPERTY_CONTENT_BORDER_INSETS, PROPERTY_DRAG_OVER_DISABLED, PROPERTY_SELECTED_INDEX, PROPERTY_SHOW_CLOSE_BUTTON_ON_MOUSE_OVER, PROPERTY_TAB_AREA_INSETS, PROPERTY_TAB_COLOR_PROVIDER, PROPERTY_TAB_INSETS, PROPERTY_TAB_LEADING_COMPONENT, PROPERTY_TAB_RESIZE_MODE, PROPERTY_TAB_SHAPE, PROPERTY_TAB_TRAILING_COMPONENT, RESIZE_MODE_COMPRESSED, RESIZE_MODE_DEFAULT, RESIZE_MODE_FIT, RESIZE_MODE_FIXED, RESIZE_MODE_NONE, SCROLL_TAB_ON_WHEEL_PROPERTY, SHAPE_BOX, SHAPE_DEFAULT, SHAPE_ECLIPSE, SHAPE_ECLIPSE3X, SHAPE_EXCEL, SHAPE_FLAT, SHAPE_OFFICE2003, SHAPE_ROUNDED_FLAT, SHAPE_ROUNDED_VSNET, SHAPE_VSNET, SHAPE_WINDOWS, SHAPE_WINDOWS_SELECTED, SHOW_CLOSE_BUTTON_ON_TAB_PROPERTY, SHOW_CLOSE_BUTTON_PROPERTY, SHOW_ICONS_PROPERTY, SHOW_TAB_AREA_PROPERTY, SHOW_TAB_BUTTONS_PROPERTY, SHOW_TAB_CONTENT_PROPERTY, SHRINK_TAB_PROPERTY, TAB_CLOSABLE_PROPERTY, USE_DEFAULT_SHOW_CLOSE_BUTTON_ON_TAB_PROPERTY, USE_DEFAULT_SHOW_ICONS_PROPERTY
 - 
Fields inherited from class javax.swing.JTabbedPanechangeEvent, changeListener, model, SCROLL_TAB_LAYOUT, tabPlacement, WRAP_TAB_LAYOUT
 - 
Fields inherited from class javax.swing.JComponentlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 - 
Fields inherited from class java.awt.ComponentaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
- 
 - 
Constructor SummaryConstructors Modifier Constructor Description protectedAbstractBlockWorkspace()
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract java.lang.StringcopyBlocks(java.util.Collection<Block> blocks)Copy these blocks to a serialized representation which is understood bypasteBlocks(String)javax.swing.JPopupMenucreateConnectorEndMenu(BlockDiagramModel model, AnchorPoint startAnchor, java.awt.Point end)Implement this if you want to present the user with a menu of options when they drop a new connector onto an empty areaIGridSettingsgetGridSettings()Returns the settings for the grid/guide/snapping systemDesignableDelegategetItemDelegate(DesignableContainer container)Called to provide the DesignableDelegate that is appropriate for the given DesignableContainerBlockDesignableContainergetSelectedContainer()The currently selected designable container, or null if none is selectedbooleanisRootSelected()protected ConnectionPainternewConnectionPainter(BlockDiagramModel model)protected BlockDesignableContainernewDesignableContainer(BlockDiagramModel model)protected EdgeRouternewEdgeRouter(BlockDiagramModel model)protected IDesignToolnewSelectionTool()protected voidonClose(DesignableContainer container)Provides subclasses a chance to handle when a tab is closedprotected voidopen(BlockDiagramModel model)abstract java.util.Collection<Block>pasteBlocks(java.lang.String xml)Deserialized previously serialized blocks (fromcopyBlocks(Collection)), and return them.- 
Methods inherited from class com.inductiveautomation.ignition.designer.designable.AbstractDesignableWorkspaceaddDesignableWorkspaceListener, close, createWorkspaceHomeTab, findDesignableContainer, findDropTarget, getAcceptableDropActions, getCurrentTool, getEditorBackground, getOpenContainerCount, getSelectedDesignPanel, getSelectedItems, getSelectedItemsCount, getSelectionControl, getSelectionPopupMenu, getSelectionTool, getTabPopupMenu, getTabToolTip, handleDoubleClick, handleDrop, handleEditClick, isDesignTime, isOpen, isOpen, isZoomingEnabled, newDesignPanel, newLogger, onBeforeClose, onCurrentToolChanged, onEditorPaint, open, openArbitraryTab, paintInteractionLayerHigh, paintInteractionLayerLow, removeDesignableWorkspaceListener, removeTab, restrictMovementToParentBounds, setCurrentTool, setDesignTime, setSelectedContainer, setSelectedItems, setSelectedItems, setStatusMessage, setupWorkspaceHomeTab, toggleItemSelection, updateMouseLocation, updateSelectionControl, updateStatusBarText
 - 
Methods inherited from class com.jidesoft.swing.JideTabbedPaneadd, addNotify, addTabEditingListener, calculateTabListPopupPosition, cancelTabEditing, clearVisComp, createFocusChangeListener, createNoFocusButton, createTabList, createTabListPopup, editTabAt, fireStateChanged, fireTabEditing, getCloseAction, getColorTheme, getContentBorderInsets, getDefaultColorTheme, getDefaultTabResizeMode, getDefaultTabStyle, getDisplayTitleAt, getEditingTabIndex, getIconForTab, getLastFocusedComponent, getPageLastFocusTrackers, getResourceString, getSelectedTabFont, getStringConverter, getTabAlignment, getTabAreaInsets, getTabAtLocation, getTabColorProvider, getTabEditingListeners, getTabEditingValidator, getTabHeight, getTabInsets, getTabLeadingComponent, getTabListCellRenderer, getTabResizeMode, getTabShape, getTabTrailingComponent, getUI, getUIClassID, hasFocusComponent, hideTabListPopup, insertTab, isAutoFocusOnTabHideClose, isAutoRequestFocus, isBoldActiveTab, isCloseTabOnMouseMiddleButton, isDragOverDisabled, isHideOneTab, isHideTrailingWhileNoButtons, isLayoutTrailingComponentBeforeButtons, isRightClickSelect, isScrollSelectedTabOnWheel, isShowCloseButton, isShowCloseButtonOnMouseOver, isShowCloseButtonOnSelectedTab, isShowCloseButtonOnTab, isShowGripper, isShowIconsOnTab, isShowTabArea, isShowTabButtons, isShowTabContent, isSuppressSetSelectedIndex, isSuppressStateChangedEvents, isTabClosableAt, isTabEditing, isTabEditingAllowed, isTabListPopupVisible, isTabShown, isUseDefaultShowCloseButtonOnTab, isUseDefaultShowIconsOnTab, moveSelectedTabTo, popupSelectedIndex, processMouseSelection, removeAll, removeNotify, removeTabAt, removeTabEditingListener, repaintContentBorder, repaintTabAreaAndContentBorder, requestFocusForVisibleComponent, resetDefaultCloseAction, scrollSelectedTabToVisible, setAutoFocusOnTabHideClose, setAutoRequestFocus, setBoldActiveTab, setCloseAction, setCloseTabOnMouseMiddleButton, setColorTheme, setComponentAt, setContentBorderInsets, setDragOverDisabled, setHideOneTab, setHideTrailingWhileNoButtons, setLayoutTrailingComponentBeforeButtons, setRightClickSelect, setScrollSelectedTabOnWheel, setSelectedIndex, setSelectedTabFont, setShowCloseButton, setShowCloseButtonOnMouseOver, setShowCloseButtonOnSelectedTab, setShowCloseButtonOnTab, setShowGripper, setShowIconsOnTab, setShowTabArea, setShowTabButtons, setShowTabContent, setStringConverter, setSuppressSetSelectedIndex, setSuppressStateChangedEvents, setTabAlignment, setTabAreaInsets, setTabClosableAt, setTabColorProvider, setTabEditingAllowed, setTabEditingValidator, setTabInsets, setTabLeadingComponent, setTabListCellRenderer, setTabResizeMode, setTabShape, setTabTrailingComponent, setUI, setUseDefaultShowCloseButtonOnTab, setUseDefaultShowIconsOnTab, showTabListPopup, stopTabEditing, updateUI
 - 
Methods inherited from class javax.swing.JTabbedPaneadd, add, add, add, addChangeListener, addTab, addTab, addTab, createChangeListener, getAccessibleContext, getBackgroundAt, getBoundsAt, getChangeListeners, getComponentAt, getDisabledIconAt, getDisplayedMnemonicIndexAt, getForegroundAt, getIconAt, getMnemonicAt, getModel, getSelectedComponent, getSelectedIndex, getTabComponentAt, getTabCount, getTabLayoutPolicy, getTabPlacement, getTabRunCount, getTitleAt, getToolTipText, getToolTipTextAt, indexAtLocation, indexOfComponent, indexOfTab, indexOfTab, indexOfTabComponent, isEnabledAt, paramString, remove, remove, removeChangeListener, setBackgroundAt, setDisabledIconAt, setDisplayedMnemonicIndexAt, setEnabledAt, setForegroundAt, setIconAt, setMnemonicAt, setModel, setSelectedComponent, setTabComponentAt, setTabLayoutPolicy, setTabPlacement, setTitleAt, setToolTipTextAt
 - 
Methods inherited from class javax.swing.JComponentaddAncestorListener, 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, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, 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.ContaineraddContainerListener, 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, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
 - 
Methods inherited from class java.awt.Componentaction, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
- 
 
- 
- 
- 
Field Detail- 
gridSettingsprotected transient BasicGridSettings gridSettings 
 
- 
 - 
Method Detail- 
getSelectedContainerpublic BlockDesignableContainer getSelectedContainer() Description copied from class:AbstractDesignableWorkspaceThe currently selected designable container, or null if none is selected- Overrides:
- getSelectedContainerin class- AbstractDesignableWorkspace
 
 - 
openprotected void open(BlockDiagramModel model) 
 - 
newDesignableContainerprotected BlockDesignableContainer newDesignableContainer(BlockDiagramModel model) 
 - 
createConnectorEndMenupublic javax.swing.JPopupMenu createConnectorEndMenu(BlockDiagramModel model, AnchorPoint startAnchor, java.awt.Point end) Implement this if you want to present the user with a menu of options when they drop a new connector onto an empty area
 - 
onCloseprotected void onClose(DesignableContainer container) Description copied from class:AbstractDesignableWorkspaceProvides subclasses a chance to handle when a tab is closed- Overrides:
- onClosein class- AbstractDesignableWorkspace
 
 - 
getItemDelegatepublic DesignableDelegate getItemDelegate(DesignableContainer container) Description copied from class:AbstractDesignableWorkspaceCalled to provide the DesignableDelegate that is appropriate for the given DesignableContainer- Specified by:
- getItemDelegatein class- AbstractDesignableWorkspace
 
 - 
getGridSettingspublic IGridSettings getGridSettings() Description copied from class:AbstractDesignableWorkspaceReturns the settings for the grid/guide/snapping system- Specified by:
- getGridSettingsin class- AbstractDesignableWorkspace
 
 - 
newSelectionToolprotected IDesignTool newSelectionTool() - Overrides:
- newSelectionToolin class- AbstractDesignableWorkspace
 
 - 
newEdgeRouterprotected EdgeRouter newEdgeRouter(BlockDiagramModel model) 
 - 
newConnectionPainterprotected ConnectionPainter newConnectionPainter(BlockDiagramModel model) 
 - 
isRootSelectedpublic boolean isRootSelected() 
 - 
copyBlockspublic abstract java.lang.String copyBlocks(java.util.Collection<Block> blocks) throws SerializationException Copy these blocks to a serialized representation which is understood bypasteBlocks(String)- Throws:
- SerializationException
 
 - 
pasteBlocks@Nullable public abstract java.util.Collection<Block> pasteBlocks(java.lang.String xml) Deserialized previously serialized blocks (fromcopyBlocks(Collection)), and return them. If an error occurs, catch and display it, then return null
 
- 
 
-