Package jmri.jmrix.bidib.swing
Class BiDiBSignalMastAddPane
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- jmri.jmrit.beantable.signalmast.SignalMastAddPane
-
- jmri.jmrix.bidib.swing.BiDiBSignalMastAddPane
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
,JmriServiceProviderInterface
public class BiDiBSignalMastAddPane extends SignalMastAddPane
A pane for configuring BiDiBSignalMast objects- Since:
- 4.11.2
- See Also:
SignalMastAddPane
, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
BiDiBSignalMastAddPane.BiDiBAspectPanel
JPanel to define properties of an Aspect for a DCC Signal Mast.static class
BiDiBSignalMastAddPane.SignalMastAddPaneProvider
-
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 (package private) javax.swing.JCheckBox
allowUnLit
(package private) javax.swing.JTextField
bidibAccesoryAddressField
(package private) javax.swing.JLabel
bidibAccesoryAddressLabel
(package private) java.util.LinkedHashMap<java.lang.String,BiDiBSignalMastAddPane.BiDiBAspectPanel>
bidibAspect
(package private) javax.swing.JPanel
bidibMastPanel
(package private) javax.swing.JScrollPane
bidibMastScroll
(package private) BiDiBSignalMast
currentMast
(package private) SignalSystem
sigsys
(package private) javax.swing.JComboBox<java.lang.String>
systemPrefixBox
(package private) javax.swing.JLabel
systemPrefixBoxLabel
(package private) javax.swing.JTextField
unLitAspectField
-
Fields inherited from class jmri.jmrit.beantable.signalmast.SignalMastAddPane
NOTIONAL_ASPECT_COUNT
-
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 Constructor Description BiDiBSignalMastAddPane()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addUsableConnections()
//Check all BiDiB connections if they have native (not DCC) Accessory functions.boolean
canHandleMast(SignalMast mast)
Can this pane edit a specific mast object, i.e. an object of its type?protected BiDiBSignalMast
constructMast(java.lang.String name)
Create a mast of the specific subtype.(package private) void
copyFromAnotherBiDiBMastAspect(java.lang.String strMast)
Copy aspects by name from another DccSignalMast.(package private) javax.swing.JComboBox<java.lang.String>
copyFromMastSelection()
boolean
createMast(java.lang.String sigsysname, java.lang.String mastname, java.lang.String username)
Called to either "create and register" a new, or "update" an existing mast from the given information.protected java.lang.String
getNamePrefix()
Get the first part of the system name for the specific mast type.java.lang.String
getPaneName()
void
setAspectNames(SignalAppearanceMap map, SignalSystem sigSystem)
Provide a new list of aspects in the signal system.void
setMast(SignalMast mast)
Load this pane with information from a mast.(package private) static boolean
validateAspectId(java.lang.String strAspect)
Check if the given aspect string is a valid BiDiB aspect.-
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, 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, 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
-
bidibMastScroll
javax.swing.JScrollPane bidibMastScroll
-
bidibMastPanel
javax.swing.JPanel bidibMastPanel
-
systemPrefixBoxLabel
javax.swing.JLabel systemPrefixBoxLabel
-
systemPrefixBox
javax.swing.JComboBox<java.lang.String> systemPrefixBox
-
bidibAccesoryAddressLabel
javax.swing.JLabel bidibAccesoryAddressLabel
-
bidibAccesoryAddressField
javax.swing.JTextField bidibAccesoryAddressField
-
allowUnLit
javax.swing.JCheckBox allowUnLit
-
unLitAspectField
javax.swing.JTextField unLitAspectField
-
bidibAspect
java.util.LinkedHashMap<java.lang.String,BiDiBSignalMastAddPane.BiDiBAspectPanel> bidibAspect
-
currentMast
BiDiBSignalMast currentMast
-
sigsys
SignalSystem sigsys
-
-
Constructor Detail
-
BiDiBSignalMastAddPane
public BiDiBSignalMastAddPane()
-
-
Method Detail
-
getPaneName
@Nonnull public java.lang.String getPaneName()
- Specified by:
getPaneName
in classSignalMastAddPane
- Returns:
- human-preferred name for type of signal mast, in local language
-
addUsableConnections
protected void addUsableConnections()
//Check all BiDiB connections if they have native (not DCC) Accessory functions. Check all BiDiB connections if they are enabled. Add those to the systemPrefixBox
-
setAspectNames
public void setAspectNames(@Nonnull SignalAppearanceMap map, @Nonnull SignalSystem sigSystem)
Provide a new list of aspects in the signal system. Must be done at startup before the pane is shown. May be done later, to update to a newly selected system.- Specified by:
setAspectNames
in classSignalMastAddPane
- Parameters:
map
- the signal appearance map.sigSystem
- the signal system.
-
canHandleMast
public boolean canHandleMast(@Nonnull SignalMast mast)
Can this pane edit a specific mast object, i.e. an object of its type?- Specified by:
canHandleMast
in classSignalMastAddPane
- Parameters:
mast
- the SignalMast to possibly display- Returns:
- true if this pane can handle that mast type; false if can't
-
setMast
public void setMast(SignalMast mast)
Load this pane with information from a mast. Do not invoke this ifSignalMastAddPane.canHandleMast(SignalMast)
on that mast returns false.- Specified by:
setMast
in classSignalMastAddPane
- Parameters:
mast
- the SignalMast to display or null to reset a previous setting
-
validateAspectId
static boolean validateAspectId(@Nonnull java.lang.String strAspect)
Check if the given aspect string is a valid BiDiB aspect. Only numeric values between 0 and 31 are allowed- Parameters:
strAspect
- name of aspect- Returns:
- true if valid
-
getNamePrefix
@Nonnull protected java.lang.String getNamePrefix()
Get the first part of the system name for the specific mast type.- Returns:
- name prefix
-
constructMast
protected BiDiBSignalMast constructMast(@Nonnull java.lang.String name)
Create a mast of the specific subtype.- Parameters:
name
- system name to create- Returns:
- the new signal
-
createMast
public boolean createMast(@Nonnull java.lang.String sigsysname, @Nonnull java.lang.String mastname, @Nonnull java.lang.String username)
Called to either "create and register" a new, or "update" an existing mast from the given information.- Specified by:
createMast
in classSignalMastAddPane
- Parameters:
sigsysname
- the name of the signal system in usemastname
- the mast type nameusername
- user name value- Returns:
- false if the operation failed, in which case the user should have already been notified
-
copyFromMastSelection
@Nonnull javax.swing.JComboBox<java.lang.String> copyFromMastSelection()
-
copyFromAnotherBiDiBMastAspect
void copyFromAnotherBiDiBMastAspect(@Nonnull java.lang.String strMast)
Copy aspects by name from another DccSignalMast.- Parameters:
strMast
- name
-
-