Class InfoBar
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- com.inductiveautomation.factorypmi.application.runtime.InfoBar
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
- Direct Known Subclasses:
UpdateAvailableInfoBar
public class InfoBar extends javax.swing.JPanel implements java.awt.event.ActionListener
An InfoBar is the bar that slides down from the top of the Client to notify users of something, like a new version of the project is available.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
InfoBar.State
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description protected javax.swing.Action
action
protected org.jdesktop.animation.timing.Animator
animator
protected java.awt.Color
bgColor
protected long
bgColorEdit
protected ClientPanel
clientPanel
The parent client panel for the infobar is needed to add and remove (show and hide) the barprotected ClientContextImpl
context
protected javax.swing.JLabel
exit
protected java.awt.Color
leftGradient
protected javax.swing.JLabel
message
protected java.awt.Color
rightGradient
protected float
slide
Controls the animation position of the info bar.protected InfoBar.State
state
-
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
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
InfoBar(ClientPanel clientPanel, ClientContextImpl clientContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent e)
protected java.awt.Color
getBGColor()
Calculates the "natural" background color for the project so that animating looks seamless.javax.swing.JLabel
getLabel()
void
hideBar()
Immediately hides the info bar, with no slide-out animationprotected javax.swing.JLabel
newMessageLabel()
Creates the JLabel used as the message, and sets things like font and alignment on it.void
paintComponent(java.awt.Graphics graphics)
void
setAction(javax.swing.Action action, boolean closable)
Sets the message label using the action's name, and sets the info bar up to be clicked upon, in order to run the action.protected void
setBgGradient(java.awt.Color left, java.awt.Color right)
Overrides the background color or gradient on the InfoBar.void
setMessage(java.lang.String message)
Sets the message label up to display a message, with no action.void
setSlide(float slide)
void
slideOut()
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, 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, isValidateRoot, paint, paintBorder, paintChildren, 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, setLayout, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
slide
protected float slide
Controls the animation position of the info bar. 0f - 1f
-
state
protected InfoBar.State state
-
message
protected javax.swing.JLabel message
-
action
protected javax.swing.Action action
-
exit
protected javax.swing.JLabel exit
-
animator
protected org.jdesktop.animation.timing.Animator animator
-
clientPanel
protected ClientPanel clientPanel
The parent client panel for the infobar is needed to add and remove (show and hide) the bar
-
context
protected ClientContextImpl context
-
bgColor
protected java.awt.Color bgColor
-
leftGradient
protected java.awt.Color leftGradient
-
rightGradient
protected java.awt.Color rightGradient
-
bgColorEdit
protected long bgColorEdit
-
-
Constructor Detail
-
InfoBar
protected InfoBar(ClientPanel clientPanel, ClientContextImpl clientContext)
-
-
Method Detail
-
getLabel
public javax.swing.JLabel getLabel()
-
newMessageLabel
protected javax.swing.JLabel newMessageLabel()
Creates the JLabel used as the message, and sets things like font and alignment on it. Good place to add an icon the the message label
-
getBGColor
protected java.awt.Color getBGColor()
Calculates the "natural" background color for the project so that animating looks seamless.
-
setBgGradient
protected void setBgGradient(java.awt.Color left, java.awt.Color right)
Overrides the background color or gradient on the InfoBar. Supports gradients with each param being the left and right most color for the gradient.
-
setAction
public void setAction(javax.swing.Action action, boolean closable)
Sets the message label using the action's name, and sets the info bar up to be clicked upon, in order to run the action.
-
setMessage
public void setMessage(java.lang.String message)
Sets the message label up to display a message, with no action. Clicking on the message will have no effect
-
paintComponent
public void paintComponent(java.awt.Graphics graphics)
- Overrides:
paintComponent
in classjavax.swing.JComponent
-
hideBar
public void hideBar()
Immediately hides the info bar, with no slide-out animation
-
slideOut
public void slideOut()
-
setSlide
public void setSlide(float slide)
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent e)
- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
-
-