Package jmri.jmrit.display
Class GlobalVariableIcon
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JLabel
-
- jmri.jmrit.display.PositionableLabel
-
- jmri.jmrit.display.MemoryOrGVIcon
-
- jmri.jmrit.display.GlobalVariableIcon
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.beans.PropertyChangeListener
,java.io.Serializable
,java.lang.Cloneable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.SwingConstants
,Positionable
,InlineLogixNG
- Direct Known Subclasses:
GlobalVariableIcon
public class GlobalVariableIcon extends MemoryOrGVIcon implements java.beans.PropertyChangeListener
An icon to display a status of a GlobalVariable.The value of the global variable can't be changed with this icon.
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class jmri.jmrit.display.PositionableLabel
PositionableLabel.PaletteFrameCloser
-
Nested classes/interfaces inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
-
Nested classes/interfaces inherited from interface jmri.jmrit.display.Positionable
Positionable.DuplicateIdException
-
-
Field Summary
Fields Modifier and Type Field Description (package private) java.awt.Color
_saveColor
(package private) static int
CENTRE
(package private) NamedIcon
defaultIcon
(package private) static int
LEFT
(package private) java.util.HashMap<java.lang.String,NamedIcon>
map
(package private) static int
RIGHT
(package private) boolean
selectable
-
Fields inherited from class jmri.jmrit.display.PositionableLabel
_control, _controlling, _displayLevel, _editable, _editor, _emptyHidden, _hidden, _icon, _iconEditor, _iconEditorFrame, _iconItemPanel, _itemPanel, _namedIcon, _paletteFrame, _popupUtil, _positionable, _rotateText, _showTooltip, _text, _tooltip, _unRotatedText, _valueEditDisabled, _viewCoordinates, active, disableItem
-
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
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description GlobalVariableIcon(java.lang.String s, Editor editor)
GlobalVariableIcon(NamedIcon s, Editor editor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addKeyAndIcon(NamedIcon icon, java.lang.String keyValue)
Positionable
deepClone()
Make a deep copy of Positional object.void
displayState()
Drive the current state of the display from the state of the GlobalVariable.protected void
displayState(java.lang.Object key)
void
dispose()
Clean up when this object is no longer needed.void
doMouseClicked(JmriMouseEvent e)
protected void
edit()
(package private) void
editGlobalVariable()
protected void
editGlobalVariableValue()
protected Positionable
finishClone(GlobalVariableIcon pos)
protected void
flipIcon(int flip)
NamedIcon
getDefaultIcon()
GlobalVariable
getGlobalVariable()
java.util.HashMap<java.lang.String,NamedIcon>
getMap()
NamedBean
getNamedBean()
Provide a generic method to return the bean associated with the Positionable.NamedBeanHandle<GlobalVariable>
getNamedGlobalVariable()
java.lang.String
getNameString()
Get the name of the positional as a String.int
getOriginalX()
int
getOriginalY()
java.lang.String
getTypeString()
Get the type of the positional as a String.protected java.lang.Object
getValue()
boolean
isSelectable()
void
propertyChange(java.beans.PropertyChangeEvent e)
void
resetDefaultIcon()
void
setAttributes(PositionablePopupUtil util, Positionable that)
Special method to transfer a setAttributes call from the LE version of GlobalVariableIcon.void
setDefaultIcon(NamedIcon n)
boolean
setEditIconMenu(javax.swing.JPopupMenu popup)
Add additional menu items to the menu.void
setGlobalVariable(java.lang.String pName)
Attach a named GlobalVariable to this display item.void
setGlobalVariable(NamedBeanHandle<GlobalVariable> m)
Attach a named GlobalVariable to this display item.void
setLocation(int x, int y)
void
setOriginalLocation(int x, int y)
void
setSelectable(boolean b)
boolean
setTextEditMenu(javax.swing.JPopupMenu popup)
Text edits cannot be done to GlobalVariable text - overrideprotected void
setValue(java.lang.Object val)
boolean
showPopUp(javax.swing.JPopupMenu popup)
Call to a Positionable that has unique requirements - e.g.void
updateSize()
Update the AWT and Swing size information due to change in internal state, e.g. if one or more of the icons that might be displayed is changed-
Methods inherited from class jmri.jmrit.display.PositionableLabel
addClass, cloneIcon, doMouseDragged, doMouseEntered, doMouseExited, doMouseMoved, doMousePressed, doMouseReleased, doViemMenu, editIcon, editIconItem, editTextItem, finishClone, finishItemUpdate, getClasses, getDegrees, getDisplayLevel, getEditor, getHeight, getId, getLogixNG, getPopupUtility, getScale, getSize, getTextComponent, getToolTip, getUnRotatedText, getViewCoordinates, getWidth, initPaletteFrame, isActive, isBackground, isControl, isControlling, isEditable, isEmptyHidden, isHidden, isIcon, isPositionable, isRotated, isText, isValueEditDisabled, makeIconEditorFrame, makePaletteFrame, makeTextOverlaidIcon, maxHeight, maxHeightTrue, maxWidth, maxWidthTrue, paintComponent, remove, removeAllClasses, removeClass, rotate, rotateOrthogonal, setControlling, setDegrees, setDisableControlMenu, setDisplayLevel, setEditable, setEditItemMenu, setEditor, setEditTextItemMenu, setEmptyHidden, setHidden, setIcon, setId, setLevel, setLogixNG, setLogixNG_SystemName, setPopupUtility, setPositionable, setRotateMenu, setRotateOrthogonalMenu, setScale, setScaleMenu, setShowToolTip, setSuperText, setText, setToolTip, setUnRotatedText, setupLogixNG, setValueEditDisabled, setViewCoordinates, showHidden, showToolTip, storeItem, updateIcon, updateTextItem
-
Methods inherited from class javax.swing.JLabel
checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setDisplayedMnemonicIndex, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setUI, setVerticalAlignment, setVerticalTextPosition, 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, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, 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, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jmri.jmrit.display.Positionable
contains, getBackground, getBounds, getEditorName, getFont, getForeground, getLocation, getParent, getPreferredSize, getTypeName, getX, getY, invalidate, isOpaque, repaint, requestFocusInWindow, setBackground, setBorder, setForeground, setLocation, setOpaque, setSize, setVisible
-
-
-
-
Field Detail
-
defaultIcon
NamedIcon defaultIcon
-
selectable
boolean selectable
-
_saveColor
java.awt.Color _saveColor
-
LEFT
static final int LEFT
- See Also:
- Constant Field Values
-
RIGHT
static final int RIGHT
- See Also:
- Constant Field Values
-
CENTRE
static final int CENTRE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
GlobalVariableIcon
public GlobalVariableIcon(java.lang.String s, Editor editor)
-
GlobalVariableIcon
public GlobalVariableIcon(NamedIcon s, Editor editor)
-
-
Method Detail
-
deepClone
public Positionable deepClone()
Description copied from interface:Positionable
Make a deep copy of Positional object. Implementation should create a new object and immediately pass the object to finishClone() returning the result of finishClone(). i.e. implementation must be:public Positionable deepClone() { Subtype t = new Subtype(); return finishClone(t); }
Then finishClone() finishes the deep Copy of a Positional object. Implementation should make deep copies of the additional members of this sub class and then pass Positionable p to super.finishClone(). i.e. implementation must terminate with statement return super.finishClone(p); See IndicatorTurnoutIcon extends TurnoutIcon extends PositionableLabel for an example of how to continue deep cloning a chain of subclasses.
- Specified by:
deepClone
in interfacePositionable
- Overrides:
deepClone
in classPositionableLabel
- Returns:
- the copy
-
finishClone
protected Positionable finishClone(GlobalVariableIcon pos)
-
resetDefaultIcon
public void resetDefaultIcon()
-
setDefaultIcon
public void setDefaultIcon(NamedIcon n)
-
getDefaultIcon
public NamedIcon getDefaultIcon()
-
setGlobalVariable
public void setGlobalVariable(java.lang.String pName)
Attach a named GlobalVariable to this display item.- Parameters:
pName
- Used as a system/user name to lookup the GlobalVariable object
-
setGlobalVariable
public void setGlobalVariable(NamedBeanHandle<GlobalVariable> m)
Attach a named GlobalVariable to this display item.- Parameters:
m
- The GlobalVariable object
-
getNamedGlobalVariable
public NamedBeanHandle<GlobalVariable> getNamedGlobalVariable()
-
getGlobalVariable
public GlobalVariable getGlobalVariable()
-
getNamedBean
public NamedBean getNamedBean()
Description copied from class:PositionableLabel
Provide a generic method to return the bean associated with the Positionable.- Specified by:
getNamedBean
in interfacePositionable
- Overrides:
getNamedBean
in classPositionableLabel
-
addKeyAndIcon
public void addKeyAndIcon(NamedIcon icon, java.lang.String keyValue)
-
propertyChange
public void propertyChange(java.beans.PropertyChangeEvent e)
- Specified by:
propertyChange
in interfacejava.beans.PropertyChangeListener
-
getTypeString
@Nonnull public java.lang.String getTypeString()
Description copied from interface:Positionable
Get the type of the positional as a String.- Specified by:
getTypeString
in interfacePositionable
- Overrides:
getTypeString
in classPositionableLabel
- Returns:
- the type to display
-
getNameString
public java.lang.String getNameString()
Description copied from interface:Positionable
Get the name of the positional as a String. This is often the display name of the NamedBean being positioned.- Specified by:
getNameString
in interfaceInlineLogixNG
- Specified by:
getNameString
in interfacePositionable
- Overrides:
getNameString
in classPositionableLabel
- Returns:
- the name to display
-
setSelectable
public void setSelectable(boolean b)
-
isSelectable
public boolean isSelectable()
-
showPopUp
public boolean showPopUp(javax.swing.JPopupMenu popup)
Description copied from class:PositionableLabel
Call to a Positionable that has unique requirements - e.g. RpsPositionIcon, SecurityElementIcon- Specified by:
showPopUp
in interfacePositionable
- Overrides:
showPopUp
in classPositionableLabel
-
setTextEditMenu
public boolean setTextEditMenu(javax.swing.JPopupMenu popup)
Text edits cannot be done to GlobalVariable text - override- Specified by:
setTextEditMenu
in interfacePositionable
- Overrides:
setTextEditMenu
in classPositionableLabel
- Parameters:
popup
- the menu to add the menu items to- Returns:
- true if adding items; false otherwise
-
flipIcon
protected void flipIcon(int flip)
-
displayState
public void displayState()
Drive the current state of the display from the state of the GlobalVariable.- Specified by:
displayState
in classMemoryOrGVIcon
-
setAttributes
public void setAttributes(PositionablePopupUtil util, Positionable that)
Special method to transfer a setAttributes call from the LE version of GlobalVariableIcon. This eliminates the need to change references to public.- Parameters:
util
- The LE popup util object.that
- The current positional object (this).- Since:
- 4.11.6
-
displayState
protected void displayState(java.lang.Object key)
-
updateSize
public void updateSize()
Description copied from class:PositionableLabel
Update the AWT and Swing size information due to change in internal state, e.g. if one or more of the icons that might be displayed is changed- Specified by:
updateSize
in interfacePositionable
- Overrides:
updateSize
in classPositionableLabel
-
setOriginalLocation
public void setOriginalLocation(int x, int y)
-
getOriginalX
public int getOriginalX()
- Specified by:
getOriginalX
in classMemoryOrGVIcon
-
getOriginalY
public int getOriginalY()
- Specified by:
getOriginalY
in classMemoryOrGVIcon
-
setLocation
public void setLocation(int x, int y)
- Specified by:
setLocation
in interfacePositionable
- Overrides:
setLocation
in classjava.awt.Component
-
setEditIconMenu
public boolean setEditIconMenu(javax.swing.JPopupMenu popup)
Description copied from interface:Positionable
Add additional menu items to the menu.- Specified by:
setEditIconMenu
in interfacePositionable
- Overrides:
setEditIconMenu
in classPositionableLabel
- Parameters:
popup
- the menu to add the menu items to- Returns:
- true if adding items; false otherwise
-
edit
protected void edit()
- Overrides:
edit
in classPositionableLabel
-
editGlobalVariable
void editGlobalVariable()
-
dispose
public void dispose()
Description copied from class:PositionableLabel
Clean up when this object is no longer needed. Should not be called while the object is still displayed; see remove()- Overrides:
dispose
in classPositionableLabel
-
doMouseClicked
public void doMouseClicked(JmriMouseEvent e)
- Specified by:
doMouseClicked
in interfacePositionable
- Overrides:
doMouseClicked
in classPositionableLabel
-
editGlobalVariableValue
protected void editGlobalVariableValue()
-
getValue
protected java.lang.Object getValue()
-
setValue
protected void setValue(java.lang.Object val)
-
-