Class VisionDesktop
- java.lang.Object
- 
- java.awt.Component
- 
- java.awt.Container
- 
- javax.swing.JComponent
- 
- javax.swing.JLayeredPane
- 
- javax.swing.JDesktopPane
- 
- com.inductiveautomation.factorypmi.application.VisionDesktop
 
 
 
 
 
 
- 
- All Implemented Interfaces:
- java.awt.image.ImageObserver,- java.awt.MenuContainer,- java.io.Serializable,- javax.accessibility.Accessible
 - Direct Known Subclasses:
- FPMIApp
 
 public abstract class VisionDesktop extends javax.swing.JDesktopPaneThis is the custom JDesktopPane that makes up the the top level of the Vision client that manages all of the open windows. The primary desktop is a subclass of this class, called FPMIApp. Through scripting, additional desktops in separate JFrames may be opened.- See Also:
- FPMIApp,- SecondaryDesktops, Serialized Form
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class javax.swing.JDesktopPanejavax.swing.JDesktopPane.AccessibleJDesktopPane
 - 
Nested classes/interfaces inherited from class javax.swing.JLayeredPanejavax.swing.JLayeredPane.AccessibleJLayeredPane
 - 
Nested classes/interfaces inherited from class javax.swing.JComponentjavax.swing.JComponent.AccessibleJComponent
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected FPMIWindowactiveWindowprotected VisionClientContextcontextstatic java.lang.ThreadLocal<java.lang.String>CURRENT_DESKTOPstatic java.lang.StringPRIMARY_DESKTOP_HANDLEprotected java.lang.StringselectedWindowTitleprotected WindowCachewindowControllerThe window controller stores the serialized code for each window, and is in charge of deserializing the windows.- 
Fields inherited from class javax.swing.JLayeredPaneDEFAULT_LAYER, DRAG_LAYER, FRAME_CONTENT_LAYER, LAYER_PROPERTY, MODAL_LAYER, PALETTE_LAYER, POPUP_LAYER
 - 
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
 
- 
 - 
Constructor SummaryConstructors Constructor Description VisionDesktop(ClientContext clientContext)VisionDesktop(ClientContext clientContext, java.lang.String handle)
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddDesktopListener(DesktopListener l)protected voidaddImpl(java.awt.Component frame, java.lang.Object constraints, int layer)protected voidfireWindowEvent(FPMIWindow window, int eventType)VisionClientContextgetAdapterContext()DockingDesktopManager.AxisPrecedencegetAxisPrecedence()java.lang.StringgetHandle()java.awt.DimensiongetMinSize()java.util.List<FPMIWindow>getOpenedWindows()Returns a List<FHMIWindow> of all open windowsjava.lang.StringgetPath(FPMIWindow window)intgetScreenIndexSafe()Returns the index of the monitor the desktop is set to display on, or zero if the screen index falls outside of the available screensScriptManagergetScriptManager()java.lang.StringgetSelectedWindowTitle()FPMIWindowgetWindow(ResourcePath id)Returns the opened window with resource idid.FPMIWindowgetWindow(java.lang.String path)Returns the opened window of namename.WindowCachegetWindowCache()FPMIWindow[]getWindows(ResourcePath id)Returns all opened windows with the given resource id.FPMIWindow[]getWindows(java.lang.String path)Returns all opened windows with the given name.protected abstract VisionClientContextinitContext(ClientContext clientContext)booleanisInfiniteDesktop()booleanisRestrictFloatingFrames()voidlayoutDocks()This function verifies the layout of the docked windows, by checking to see if they are in the correct position, and moving/resizing them if necessary.voidnotifyWindowDeleted(ResourcePath id)Removes (permanently) the window of the specified name.javax.swing.RootPaneContaineropenWindow(ResourcePath path)javax.swing.RootPaneContaineropenWindow(java.lang.String path)Opens, or brings to front, the window with namename.javax.swing.RootPaneContaineropenWindow(java.lang.String path, WindowInitializer initializer)javax.swing.RootPaneContaineropenWindow(java.lang.String path, WindowInitializer initializer, boolean openAdditional)voidremove(java.awt.Component c)voidremoveDesktopListener(DesktopListener l)voidsetAxisPrecedence(DockingDesktopManager.AxisPrecedence axisPrecedence)voidsetBackground(java.awt.Color bg)voidsetBounds(int x, int y, int w, int h)voidsetInfiniteDesktop(boolean infiniteDesktop)voidsetMinSize(java.awt.Dimension minSize)voidsetRestrictFloatingFrames(boolean restrictFloatingFrames)voidsetScreenIndex(int screenIndex)Sets the index of the monitor the desktop is set to display on.voidsetSelectedWindowTitle(java.lang.String selectedWindowTitle)voidsetWindowOpener(WindowOpener windowOpener)protected voidshutdown(boolean designer)- 
Methods inherited from class javax.swing.JDesktopPanegetAccessibleContext, getAllFrames, getAllFramesInLayer, getDesktopManager, getDragMode, getSelectedFrame, getUI, getUIClassID, paramString, remove, removeAll, selectFrame, setComponentZOrder, setDesktopManager, setDragMode, setSelectedFrame, setUI, updateUI
 - 
Methods inherited from class javax.swing.JLayeredPanegetComponentCountInLayer, getComponentsInLayer, getComponentToLayer, getIndexOf, getLayer, getLayer, getLayeredPaneAbove, getObjectForLayer, getPosition, highestLayer, insertIndexForLayer, isOptimizedDrawingEnabled, lowestLayer, moveToBack, moveToFront, paint, putLayer, setLayer, setLayer, setPosition
 - 
Methods inherited from class javax.swing.JComponentaddAncestorListener, 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, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, 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, 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.Containeradd, add, add, add, add, addContainerListener, 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, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
- 
 
- 
- 
- 
Field Detail- 
PRIMARY_DESKTOP_HANDLEpublic static final java.lang.String PRIMARY_DESKTOP_HANDLE - See Also:
- Constant Field Values
 
 - 
CURRENT_DESKTOPpublic static final java.lang.ThreadLocal<java.lang.String> CURRENT_DESKTOP 
 - 
contextprotected final VisionClientContext context 
 - 
windowControllerprotected final WindowCache windowController The window controller stores the serialized code for each window, and is in charge of deserializing the windows.
 - 
activeWindowprotected FPMIWindow activeWindow 
 - 
selectedWindowTitleprotected java.lang.String selectedWindowTitle 
 
- 
 - 
Constructor Detail- 
VisionDesktoppublic VisionDesktop(ClientContext clientContext) 
 - 
VisionDesktoppublic VisionDesktop(ClientContext clientContext, java.lang.String handle) 
 
- 
 - 
Method Detail- 
initContextprotected abstract VisionClientContext initContext(ClientContext clientContext) 
 - 
getHandlepublic java.lang.String getHandle() 
 - 
shutdownprotected void shutdown(boolean designer) 
 - 
notifyWindowDeletedpublic void notifyWindowDeleted(ResourcePath id) Removes (permanently) the window of the specified name. All code for the window is deleted.
 - 
getAdapterContextpublic VisionClientContext getAdapterContext() 
 - 
setWindowOpenerpublic void setWindowOpener(WindowOpener windowOpener) 
 - 
getWindowCachepublic WindowCache getWindowCache() 
 - 
openWindowpublic javax.swing.RootPaneContainer openWindow(ResourcePath path) 
 - 
openWindowpublic javax.swing.RootPaneContainer openWindow(java.lang.String path) Opens, or brings to front, the window with namename.- Parameters:
- path- the path of the window to open/select
- Returns:
- the window that was opened or selected.
 
 - 
openWindowpublic javax.swing.RootPaneContainer openWindow(java.lang.String path, WindowInitializer initializer)
 - 
openWindowpublic javax.swing.RootPaneContainer openWindow(java.lang.String path, WindowInitializer initializer, boolean openAdditional)
 - 
getWindowpublic FPMIWindow getWindow(java.lang.String path) Returns the opened window of namename. If there is no open window with the given name, null is returned.- Parameters:
- path- The path of the window to find
 
 - 
getPathpublic java.lang.String getPath(FPMIWindow window) 
 - 
getWindowspublic FPMIWindow[] getWindows(java.lang.String path) Returns all opened windows with the given name. Returns an empty array if there are none.
 - 
getWindowpublic FPMIWindow getWindow(ResourcePath id) Returns the opened window with resource idid. If there is no open window with the given id, null is returned.
 - 
getWindowspublic FPMIWindow[] getWindows(ResourcePath id) Returns all opened windows with the given resource id. Returns an empty array if there are none.
 - 
getOpenedWindowspublic java.util.List<FPMIWindow> getOpenedWindows() Returns a List<FHMIWindow> of all open windows
 - 
getMinSizepublic java.awt.Dimension getMinSize() 
 - 
setMinSizepublic void setMinSize(java.awt.Dimension minSize) 
 - 
getScreenIndexSafepublic int getScreenIndexSafe() Returns the index of the monitor the desktop is set to display on, or zero if the screen index falls outside of the available screens
 - 
setScreenIndexpublic void setScreenIndex(int screenIndex) Sets the index of the monitor the desktop is set to display on. Does not actually move the desktop to a display, nor does it check to ensure the index maps to an actual monitor. Used for record keeping.
 - 
setAxisPrecedencepublic void setAxisPrecedence(DockingDesktopManager.AxisPrecedence axisPrecedence) 
 - 
getAxisPrecedencepublic DockingDesktopManager.AxisPrecedence getAxisPrecedence() 
 - 
setRestrictFloatingFramespublic void setRestrictFloatingFrames(boolean restrictFloatingFrames) 
 - 
isRestrictFloatingFramespublic boolean isRestrictFloatingFrames() 
 - 
setInfiniteDesktoppublic void setInfiniteDesktop(boolean infiniteDesktop) 
 - 
isInfiniteDesktoppublic boolean isInfiniteDesktop() 
 - 
layoutDockspublic void layoutDocks() This function verifies the layout of the docked windows, by checking to see if they are in the correct position, and moving/resizing them if necessary.
 - 
setBoundspublic void setBounds(int x, int y, int w, int h)- Overrides:
- setBoundsin class- java.awt.Component
 
 - 
addImplprotected void addImpl(java.awt.Component frame, java.lang.Object constraints, int layer)- Overrides:
- addImplin class- javax.swing.JDesktopPane
 
 - 
removepublic void remove(java.awt.Component c) - Overrides:
- removein class- javax.swing.JDesktopPane
 
 - 
setBackgroundpublic void setBackground(java.awt.Color bg) - Overrides:
- setBackgroundin class- javax.swing.JComponent
 
 - 
addDesktopListenerpublic void addDesktopListener(DesktopListener l) 
 - 
removeDesktopListenerpublic void removeDesktopListener(DesktopListener l) 
 - 
fireWindowEventprotected void fireWindowEvent(FPMIWindow window, int eventType) 
 - 
getSelectedWindowTitlepublic java.lang.String getSelectedWindowTitle() 
 - 
setSelectedWindowTitlepublic void setSelectedWindowTitle(java.lang.String selectedWindowTitle) 
 - 
getScriptManagerpublic ScriptManager getScriptManager() 
 
- 
 
-