Package jmri.jmrit.display
Class IndicatorTrackIcon
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JLabel
jmri.jmrit.display.PositionableLabel
jmri.jmrit.display.PositionableIcon
jmri.jmrit.display.IndicatorTrackIcon
- All Implemented Interfaces:
ImageObserver,MenuContainer,PropertyChangeListener,Serializable,Cloneable,EventListener,Accessible,SwingConstants,IndicatorTrack,Positionable,InlineLogixNG
public class IndicatorTrackIcon
extends PositionableIcon
implements PropertyChangeListener, IndicatorTrack
An icon to display the status of a track segment in a block.
This responds to the following conditions:
- KnownState of an occupancy sensor of the block where the track segment appears
- Allocation of a route by a Warrant where the track segment appears
- Current position of a train being run under a Warrant where the track segment appears in a block of the route
- Out of Service for a block that cannot or should not be used
- An error state of the block where the track segment appears (short/no power etc.)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class jmri.jmrit.display.PositionableLabel
PositionableLabel.PaletteFrameCloserNested classes/interfaces inherited from class javax.swing.JLabel
JLabel.AccessibleJLabelNested 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.FlipBufferStrategyNested classes/interfaces inherited from interface jmri.jmrit.display.Positionable
Positionable.DuplicateIdException -
Field Summary
Fields inherited from class jmri.jmrit.display.PositionableIcon
_iconFamily, _iconMap, _rotate, _scaleFields 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, disableItemFields 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 javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidMake a deep copy of Positional object.voiddisplayState(String status) voiddispose()Clean up when this object is no longer needed.protected voideditItem()protected PositionableProvide a generic method to return the bean associated with the Positionable.Get the name of the positional as a String.getPaths()Get the type of the positional as a String.intintmaxWidth()voidvoidremovePath(String path) voidrotate(int deg) booleansetEditItemMenu(JPopupMenu popup) Add additional menu items to the menu.voidvoidsetOccBlock(String pName) Attach a named OBlock to display status.voidsetOccBlockHandle(NamedBeanHandle<OBlock> blockHandle) voidsetOccSensor(String pName) Attach a named sensor to display status.voidsetOccSensorHandle(NamedBeanHandle<Sensor> senHandle) voidvoidsetShowTrain(boolean set) voidsetStatus(int state) Get track name for known state of occupancy sensorbooleanshowPopUp(JPopupMenu popup) Pop-up displays unique attributes.booleanMethods inherited from class jmri.jmrit.display.PositionableIcon
cloneMap, displayState, finishClone, getFamily, getIcon, getIconMap, getIconStateNames, getScale, getStateNameCollection, rotateOrthogonal, setFamily, setScaleMethods inherited from class jmri.jmrit.display.PositionableLabel
addClass, cloneIcon, doMouseClicked, doMouseDragged, doMouseEntered, doMouseExited, doMouseMoved, doMousePressed, doMouseReleased, doViemMenu, edit, editIcon, editIconItem, editTextItem, finishClone, finishItemUpdate, getClasses, getDegrees, getDisplayLevel, getEditor, getHeight, getId, getLogixNG, getPopupUtility, getSize, getTextComponent, getToolTip, getUnRotatedText, getViewCoordinates, getWidth, initPaletteFrame, isActive, isBackground, isControl, isControlling, isEditable, isEmptyHidden, isHidden, isIcon, isPositionable, isRotated, isText, isValueEditDisabled, makeIconEditorFrame, makePaletteFrame, makeTextOverlaidIcon, maxHeightTrue, maxWidthTrue, paintComponent, remove, removeAllClasses, removeClass, setControlling, setDegrees, setDisableControlMenu, setDisplayLevel, setEditable, setEditIconMenu, setEditor, setEditTextItemMenu, setEmptyHidden, setHidden, setIcon, setId, setLevel, setLogixNG, setLogixNG_SystemName, setPopupUtility, setPositionable, setRotateMenu, setRotateOrthogonalMenu, setScaleMenu, setShowToolTip, setSuperText, setText, setTextEditMenu, setToolTip, setUnRotatedText, setupLogixNG, setValueEditDisabled, setViewCoordinates, showEmptyHidden, showHidden, showToolTip, storeItem, updateIcon, updateSize, updateTextItemMethods 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, 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, 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, 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, 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, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface jmri.jmrit.logixng.InlineLogixNG
getLogixNG, setLogixNG, setLogixNG_SystemName, setupLogixNGMethods inherited from interface jmri.jmrit.display.Positionable
addClass, contains, doMouseClicked, doMouseDragged, doMouseEntered, doMouseExited, doMouseMoved, doMousePressed, doMouseReleased, doViemMenu, getBackground, getBounds, getClasses, getDegrees, getDisplayLevel, getEditor, getEditorName, getFont, getForeground, getHeight, getId, getLocation, getParent, getPopupUtility, getPreferredSize, getScale, getTextComponent, getToolTip, getTypeName, getViewCoordinates, getWidth, getX, getY, invalidate, isControlling, isEditable, isEmptyHidden, isHidden, isOpaque, isPositionable, isValueEditDisabled, remove, removeAllClasses, removeClass, repaint, requestFocusInWindow, setBackground, setBorder, setControlling, setDisableControlMenu, setDisplayLevel, setEditable, setEditIconMenu, setEditor, setEmptyHidden, setForeground, setHidden, setId, setLocation, setLocation, setOpaque, setPopupUtility, setPositionable, setRotateMenu, setRotateOrthogonalMenu, setScale, setScaleMenu, setShowToolTip, setSize, setTextEditMenu, setToolTip, setValueEditDisabled, setViewCoordinates, setVisible, showHidden, showToolTip, storeItem, updateSize
-
Constructor Details
-
IndicatorTrackIcon
-
-
Method Details
-
deepClone
Description copied from interface:PositionableMake 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:
deepClonein interfacePositionable- Overrides:
deepClonein classPositionableIcon- Returns:
- the copy
-
finishClone
-
setOccSensor
Attach a named sensor to display status.- Specified by:
setOccSensorin interfaceIndicatorTrack- Parameters:
pName- Used as a system/user name to lookup the sensor object
-
setOccSensorHandle
- Specified by:
setOccSensorHandlein interfaceIndicatorTrack
-
getOccSensor
- Specified by:
getOccSensorin interfaceIndicatorTrack
-
getNamedOccSensor
- Specified by:
getNamedOccSensorin interfaceIndicatorTrack
-
setOccBlock
Attach a named OBlock to display status.- Specified by:
setOccBlockin interfaceIndicatorTrack- Parameters:
pName- Used as a system/user name to look up the OBlock object
-
setOccBlockHandle
- Specified by:
setOccBlockHandlein interfaceIndicatorTrack
-
getOccBlock
- Specified by:
getOccBlockin interfaceIndicatorTrack
-
getNamedOccBlock
- Specified by:
getNamedOccBlockin interfaceIndicatorTrack
-
setShowTrain
- Specified by:
setShowTrainin interfaceIndicatorTrack
-
showTrain
- Specified by:
showTrainin interfaceIndicatorTrack
-
getPaths
- Specified by:
getPathsin interfaceIndicatorTrack
-
setPaths
-
addPath
- Specified by:
addPathin interfaceIndicatorTrack
-
removePath
- Specified by:
removePathin interfaceIndicatorTrack
-
setStatus
Get track name for known state of occupancy sensor- Specified by:
setStatusin interfaceIndicatorTrack
-
setIcon
-
getStatus
-
maxHeight
- Specified by:
maxHeightin interfacePositionable- Overrides:
maxHeightin classPositionableIcon
-
maxWidth
- Specified by:
maxWidthin interfacePositionable- Overrides:
maxWidthin classPositionableIcon
-
propertyChange
- Specified by:
propertyChangein interfacePropertyChangeListener
-
getTypeString
Description copied from interface:PositionableGet the type of the positional as a String.- Specified by:
getTypeStringin interfacePositionable- Overrides:
getTypeStringin classPositionableLabel- Returns:
- the type to display
-
getNameString
Description copied from interface:PositionableGet the name of the positional as a String. This is often the display name of the NamedBean being positioned.- Specified by:
getNameStringin interfaceInlineLogixNG- Specified by:
getNameStringin interfacePositionable- Overrides:
getNameStringin classPositionableLabel- Returns:
- the name to display
-
showPopUp
Pop-up displays unique attributes.- Specified by:
showPopUpin interfacePositionable- Overrides:
showPopUpin classPositionableLabel
-
displayState
-
rotate
- Specified by:
rotatein interfacePositionable- Overrides:
rotatein classPositionableIcon
-
setEditItemMenu
Description copied from interface:PositionableAdd additional menu items to the menu.- Specified by:
setEditItemMenuin interfacePositionable- Overrides:
setEditItemMenuin classPositionableLabel- Parameters:
popup- the menu to add the menu items to- Returns:
- true if adding items; false otherwise
-
editItem
-
dispose
Description copied from class:PositionableLabelClean up when this object is no longer needed. Should not be called while the object is still displayed; see remove()- Overrides:
disposein classPositionableLabel
-
getNamedBean
Description copied from class:PositionableLabelProvide a generic method to return the bean associated with the Positionable.- Specified by:
getNamedBeanin interfacePositionable- Overrides:
getNamedBeanin classPositionableLabel
-