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:
ImageObserver,MenuContainer,Serializable,Accessible
- Direct Known Subclasses:
FPMIApp
This 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:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JDesktopPane
JDesktopPane.AccessibleJDesktopPaneNested classes/interfaces inherited from class javax.swing.JLayeredPane
JLayeredPane.AccessibleJLayeredPaneNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected FPMIWindowprotected final VisionClientContextstatic final ThreadLocal<String>static final Stringprotected Stringprotected final WindowCacheThe window controller stores the serialized code for each window, and is in charge of deserializing the windows.Fields inherited from class javax.swing.JDesktopPane
LIVE_DRAG_MODE, OUTLINE_DRAG_MODEFields inherited from class javax.swing.JLayeredPane
DEFAULT_LAYER, DRAG_LAYER, FRAME_CONTENT_LAYER, LAYER_PROPERTY, MODAL_LAYER, PALETTE_LAYER, POPUP_LAYERFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionVisionDesktop(ClientContext clientContext) VisionDesktop(ClientContext clientContext, String handle) -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected voidprotected voidfireWindowEvent(FPMIWindow window, int eventType) Returns a List<FHMIWindow> of all open windowsgetPath(FPMIWindow window) intReturns the index of the monitor the desktop is set to display on, or zero if the screen index falls outside of the available screensReturns the opened window with resource idid.Returns the opened window of namename.Returns all opened windows with the given resource id.getWindows(String path) Returns all opened windows with the given name.protected abstract VisionClientContextinitContext(ClientContext clientContext) booleanbooleanvoidThis 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.voidRemoves (permanently) the window of the specified name.openWindow(ResourcePath path) openWindow(String path) Opens, or brings to front, the window with namename.openWindow(String path, WindowInitializer initializer) openWindow(String path, WindowInitializer initializer, boolean openAdditional) voidvoidvoidsetAxisPrecedence(DockingDesktopManager.AxisPrecedence axisPrecedence) voidsetBackground(Color bg) voidsetBounds(int x, int y, int w, int h) voidsetInfiniteDesktop(boolean infiniteDesktop) voidsetMinSize(Dimension minSize) voidsetRestrictFloatingFrames(boolean restrictFloatingFrames) voidsetScreenIndex(int screenIndex) Sets the index of the monitor the desktop is set to display on.voidsetSelectedWindowTitle(String selectedWindowTitle) voidsetWindowOpener(WindowOpener windowOpener) protected voidshutdown(boolean designer) Methods inherited from class javax.swing.JDesktopPane
getAccessibleContext, getAllFrames, getAllFramesInLayer, getDesktopManager, getDragMode, getSelectedFrame, getUI, getUIClassID, paramString, remove, removeAll, selectFrame, setComponentZOrder, setDesktopManager, setDragMode, setSelectedFrame, setUI, updateUIMethods inherited from class javax.swing.JLayeredPane
getComponentCountInLayer, getComponentsInLayer, getComponentToLayer, getIndexOf, getLayer, getLayer, getLayeredPaneAbove, getObjectForLayer, getPosition, highestLayer, insertIndexForLayer, isOptimizedDrawingEnabled, lowestLayer, moveToBack, moveToFront, paint, putLayer, setLayer, setLayer, setPositionMethods 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, 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, updateMethods inherited from class java.awt.Container
add, 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, validateTreeMethods 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
PRIMARY_DESKTOP_HANDLE
- See Also:
-
CURRENT_DESKTOP
-
context
-
windowController
The window controller stores the serialized code for each window, and is in charge of deserializing the windows. -
activeWindow
-
selectedWindowTitle
-
-
Constructor Details
-
VisionDesktop
-
VisionDesktop
-
-
Method Details
-
initContext
-
getHandle
-
shutdown
protected void shutdown(boolean designer) -
notifyWindowDeleted
Removes (permanently) the window of the specified name. All code for the window is deleted. -
getAdapterContext
-
setWindowOpener
-
getWindowCache
-
openWindow
-
openWindow
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.
-
openWindow
-
openWindow
public RootPaneContainer openWindow(String path, WindowInitializer initializer, boolean openAdditional) -
getWindow
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
-
getPath
-
getWindows
Returns all opened windows with the given name. Returns an empty array if there are none. -
getWindow
Returns the opened window with resource idid. If there is no open window with the given id, null is returned. -
getWindows
Returns all opened windows with the given resource id. Returns an empty array if there are none. -
getOpenedWindows
Returns a List<FHMIWindow> of all open windows -
getMinSize
-
setMinSize
-
getScreenIndexSafe
public 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 -
setScreenIndex
public 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. -
setAxisPrecedence
-
getAxisPrecedence
-
setRestrictFloatingFrames
public void setRestrictFloatingFrames(boolean restrictFloatingFrames) -
isRestrictFloatingFrames
public boolean isRestrictFloatingFrames() -
setInfiniteDesktop
public void setInfiniteDesktop(boolean infiniteDesktop) -
isInfiniteDesktop
public boolean isInfiniteDesktop() -
layoutDocks
public 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. -
setBounds
public void setBounds(int x, int y, int w, int h) -
addImpl
- Overrides:
addImplin classJDesktopPane
-
remove
- Overrides:
removein classJDesktopPane
-
setBackground
- Overrides:
setBackgroundin classJComponent
-
addDesktopListener
-
removeDesktopListener
-
fireWindowEvent
-
getSelectedWindowTitle
-
setSelectedWindowTitle
-
getScriptManager
-