Class IndicatorTurnoutIcon
- All Implemented Interfaces:
ImageObserver,MenuContainer,PropertyChangeListener,Serializable,Cloneable,EventListener,Accessible,SwingConstants,IndicatorTrack,Positionable,InlineLogixNG
This responds to only KnownState, leaving CommandedState to some other graphic representation later.
"state" is the state of the underlying turnout ("closed", "thrown", etc.)
"status" is the operating condition of the track ("clear", "occupied", etc.)
A click on the icon will command a state change. Specifically, it will set the CommandedState to the opposite (THROWN vs CLOSED) of the current KnownState. This will display the setting of the turnout points.
The status is indicated by color and changes are done only done by the occupancy sensing - OBlock or other sensor.
The default icons are for a left-handed turnout, facing point for east-bound traffic.
- 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
FieldsModifier and TypeFieldDescriptionFields inherited from class jmri.jmrit.display.TurnoutIcon
_iconStateMap, _name2stateMap, _state2nameMapFields 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, _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(int state) Drive the current state of the display from the state of the turnout and status of track.voiddispose()Clean up when this object is no longer needed.protected voideditItem()protected PositionableGet the name of the positional as a String.getPaths()getStateName(Integer state) Get the type of the positional as a String.initMaps()intintmaxWidth()voidvoidremovePath(String path) voidrotate(int deg) protected void****** popup AbstractAction.actionPerformed method overrides ********voidPlace icon by its localized bean state namevoidsetOccBlock(String pName) Attached a named OBlock to display statusvoidsetOccBlockHandle(NamedBeanHandle<OBlock> blockHandle) voidsetOccSensor(String pName) Attached a named sensor to display status from OBlocksvoidvoidvoidsetScale(double s) voidsetShowTrain(boolean set) voidsetStatus(int state) get track name for known state of occupancy sensorboolean(package private) voidMethods inherited from class jmri.jmrit.display.TurnoutIcon
addTristateEntry, alternateOnClick, buttonLive, cloneMap, doMouseClicked, doMousePressed, doMouseReleased, edit, finishClone, getDirectControl, getIcon, getIcon, getMomentary, getNamedBean, getNamedTurnout, getStateName, getTristate, getTurnout, setDirectControl, setEditIconMenu, setEditItemMenu, setIcon, setMomentary, setTristate, setTurnout, setTurnout, showPopUp, turnoutState, updateTurnoutMethods inherited from class jmri.jmrit.display.PositionableIcon
cloneMap, finishClone, getFamily, getIconMap, getIconStateNames, getScale, getStateNameCollection, setFamilyMethods inherited from class jmri.jmrit.display.PositionableLabel
addClass, cloneIcon, doMouseDragged, doMouseEntered, doMouseExited, doMouseMoved, doViemMenu, 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, 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, getNamedBean, 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, setEditItemMenu, setEditor, setEmptyHidden, setForeground, setHidden, setId, setLocation, setLocation, setOpaque, setPopupUtility, setPositionable, setRotateMenu, setRotateOrthogonalMenu, setScaleMenu, setShowToolTip, setSize, setTextEditMenu, setToolTip, setValueEditDisabled, setViewCoordinates, setVisible, showHidden, showPopUp, showToolTip, storeItem, updateSize
-
Field Details
-
_iconMaps
-
-
Constructor Details
-
IndicatorTurnoutIcon
-
-
Method Details
-
initMaps
-
cloneMaps
-
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 classTurnoutIcon- Returns:
- the copy
-
finishClone
-
getIconMaps
-
setOccSensor
Attached a named sensor to display status from OBlocks- 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
Attached a named OBlock to display status- Specified by:
setOccBlockin interfaceIndicatorTrack- Parameters:
pName- Used as a system/user name to lookup 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
Place icon by its localized bean state name- Parameters:
status- the track condition of the iconstateName- NamedBean name of turnout stateicon- icon corresponding to status and state
-
getIcon
-
getStateName
-
getStatus
-
maxHeight
- Specified by:
maxHeightin interfacePositionable- Overrides:
maxHeightin classTurnoutIcon
-
maxWidth
- Specified by:
maxWidthin interfacePositionable- Overrides:
maxWidthin classTurnoutIcon
-
rotateOrthogonal
****** popup AbstractAction.actionPerformed method overrides ********- Overrides:
rotateOrthogonalin classTurnoutIcon
-
setScale
- Specified by:
setScalein interfacePositionable- Overrides:
setScalein classTurnoutIcon
-
rotate
- Specified by:
rotatein interfacePositionable- Overrides:
rotatein classTurnoutIcon
-
displayState
Drive the current state of the display from the state of the turnout and status of track.- Overrides:
displayStatein classTurnoutIcon
-
getTypeString
Description copied from interface:PositionableGet the type of the positional as a String.- Specified by:
getTypeStringin interfacePositionable- Overrides:
getTypeStringin classTurnoutIcon- 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 classTurnoutIcon- Returns:
- the name to display
-
propertyChange
- Specified by:
propertyChangein interfacePropertyChangeListener- Overrides:
propertyChangein classTurnoutIcon
-
editItem
- Overrides:
editItemin classTurnoutIcon
-
updateItem
void updateItem()- Overrides:
updateItemin classTurnoutIcon
-
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 classTurnoutIcon
-