Class ClientPanel
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
com.inductiveautomation.ignition.client.launch.LaunchableApp
com.inductiveautomation.factorypmi.application.runtime.ClientPanel
- All Implemented Interfaces:
LocaleListener,ImageObserver,MenuContainer,Serializable,Accessible
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classReflectively destroys the thread locals held onto by the Py class - used to avoid memory leakstatic classNested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested 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
Fields inherited from class com.inductiveautomation.ignition.client.launch.LaunchableApp
frameIcon, frameTitle, glassPaneFields 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, WIDTHFields inherited from interface com.inductiveautomation.ignition.client.model.LocaleListener
LOCAL_CHANGE_EVENT -
Method Summary
Modifier and TypeMethodDescriptionbooleanMay be called to check whether or not the application thinks that it should be allowed to be closed or not.voidIf a project update is pending this will trigger the update processprotected voidprotected voidThe desired initial size of any enclosing frame, if applicablecom.inductiveautomation.factorypmi.application.runtime.RuntimeMenugetMenu()intprotected voidInstalls a new instance of LoginPanel as the content pane.booleanbooleanbooleanIf the enclosing container is a frame, should it start in centered mode?booleanIf the enclosing container is a frame, should it start in maximized mode?voidlocaleChanged(Locale newLocale) voidlockScreen(boolean obscure) Called by fpmi.security.lockScreen()voidlogout()voidvoidsetMenu(com.inductiveautomation.factorypmi.application.runtime.RuntimeMenu newMenu) voidshutdown()May be called when the enclosing frame/applet is externally closed down.protected voidvoidstartup(ProjectInitializationParams params) Main entrypoint, called fromClientLaunchHook.startup()protected voidvoidMethods inherited from class com.inductiveautomation.ignition.client.launch.LaunchableApp
getFrameIcon, getFrameTitle, getGlassPane, setFrameIcon, setFrameTitle, setGlassPaneMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods 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, isValidateRoot, 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, updateMethods 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, 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, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Method Details
-
startup
Main entrypoint, called from
ClientLaunchHook.startup()Adds notification listeners for project change and project deletion.
If the gateway connection's session is already valid at this point, control goes to
startupApp(ProjectInitializationParams)directly. Otherwise,installLoginPane(ProjectInitializationParams)is called.- Throws:
Exception
-
installLoginPane
Installs a new instance of LoginPanel as the content pane. (see
setContentPane(JComponent))The LoginPanel uses a pluggable "LoginScreenPainter", which is instantiated reflectively using the value of bundle string "fpmi.LoginPanel.class". This is for white-labeling.
Note that the login panel's "Login" button doesn't have any logic there. This function adds the
ClientPanel.ClassicLoginActionaction to it. -
startupApp
- Throws:
Exception
-
doPendingProjectUpdate
public void doPendingProjectUpdate()If a project update is pending this will trigger the update process -
doUpdateProject
protected void doUpdateProject() -
doScriptModuleUpdate
protected void doScriptModuleUpdate() -
canShutdown
public boolean canShutdown()Description copied from class:LaunchableAppMay be called to check whether or not the application thinks that it should be allowed to be closed or not.- Specified by:
canShutdownin classLaunchableApp
-
shutdown
public void shutdown()Description copied from class:LaunchableAppMay be called when the enclosing frame/applet is externally closed down.- Specified by:
shutdownin classLaunchableApp
-
shutdownApp
protected void shutdownApp() -
logout
public void logout() -
getLayeredGlassPane
-
lockScreen
public void lockScreen(boolean obscure) Called by fpmi.security.lockScreen() -
isScreenLocked
public boolean isScreenLocked() -
unlockScreen
public void unlockScreen() -
getInitialFrameSize
Description copied from class:LaunchableAppThe desired initial size of any enclosing frame, if applicable- Specified by:
getInitialFrameSizein classLaunchableApp
-
isStartMaximized
public boolean isStartMaximized()Description copied from class:LaunchableAppIf the enclosing container is a frame, should it start in maximized mode?- Specified by:
isStartMaximizedin classLaunchableApp
-
isStartCentered
public boolean isStartCentered()Description copied from class:LaunchableAppIf the enclosing container is a frame, should it start in centered mode?- Specified by:
isStartCenteredin classLaunchableApp
-
getScreenIndex
public int getScreenIndex()- Overrides:
getScreenIndexin classLaunchableApp
-
getClientContext
-
getLaunchContext
-
getPopupDesktop
-
isMenuVisible
public boolean isMenuVisible() -
getMenu
public com.inductiveautomation.factorypmi.application.runtime.RuntimeMenu getMenu() -
setMenu
public void setMenu(com.inductiveautomation.factorypmi.application.runtime.RuntimeMenu newMenu) -
rebuildMenu
public void rebuildMenu() -
localeChanged
- Specified by:
localeChangedin interfaceLocaleListener
-