Class NodeConfigToolPane
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- jmri.util.swing.JmriPanel
-
- jmri.jmrix.can.swing.CanPanel
-
- jmri.jmrix.can.cbus.swing.nodeconfig.NodeConfigToolPane
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.beans.PropertyChangeListener
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,CanPanelInterface
public class NodeConfigToolPane extends CanPanel implements java.beans.PropertyChangeListener
Master Pane for CBUS node configuration incl. CBUS node table- Since:
- 2.99.2
- See Also:
CbusNodeTableDataModel
, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
NodeConfigToolPane.Default
Nested class to create one of these using old-style defaults.-
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 int
NODE_SEARCH_TIMEOUT
javax.swing.JTable
nodeTable
protected CbusNodeTablePane
nodeTablePane
protected javax.swing.JTabbedPane
tabbedPane
-
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 NodeConfigToolPane()
Create a new NodeConfigToolPane
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
clearEditEventFrame()
Receive notification from the frame that it has disposedvoid
dispose()
CbusNodeEditEventFrame
getEditEvFrame()
Get the edit event frame this could be requested from CbusNodeEventDataModel button click to edit event, this class when it receives an event via drag n drop, creating new event from CbusNodeEventVarPanejava.lang.String
getHelpTarget()
Provide a help target string which an enclosing frame can provide as a help reference.java.util.List<javax.swing.JMenu>
getMenus()
Creates a Menu List.protected CbusNodeTableDataModel
getNodeModel()
Get the System Connection Node Modelprotected java.util.ArrayList<CbusNodeConfigTab>
getTabs()
java.lang.String
getTitle()
Provide a recommended title for an enclosing frame.void
init()
Initialise the NodeConfigToolPanevoid
initComponents(CanSystemConnectionMemo memo)
2nd stage of initialization, invoked after the Constructor is complete.void
notifyNodeSearchComplete(int csfound, int ndfound)
Create a document-modal Dialog with node search results.void
propertyChange(java.beans.PropertyChangeEvent ev)
protected void
setRestoreFcuActive(boolean isActive)
Set Restore from FCU Menu Item active as only 1 instance per NodeConfigToolPane allowedprotected void
showConfirmThenSave(CbusNode fromNode, CbusNode toNode, boolean teachNVs, boolean clearEvents, boolean teachEvents, javax.swing.JFrame frame)
Show a Confirm before Save Dialogue Box then start teach process for Nodeprotected void
userViewChanged()
Notify this pane that the selected node or viewed tab has changed-
Methods inherited from class jmri.jmrix.can.swing.CanPanel
getMemo, initContext, prependConnToString
-
Methods inherited from class jmri.util.swing.JmriPanel
getMinimumDimension, getWindowInterface, initComponents, isMultipleInstances, setWindowInterface
-
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
-
nodeTable
public javax.swing.JTable nodeTable
-
nodeTablePane
protected CbusNodeTablePane nodeTablePane
-
tabbedPane
protected javax.swing.JTabbedPane tabbedPane
-
NODE_SEARCH_TIMEOUT
public int NODE_SEARCH_TIMEOUT
-
-
Constructor Detail
-
NodeConfigToolPane
public NodeConfigToolPane()
Create a new NodeConfigToolPane
-
-
Method Detail
-
initComponents
public void initComponents(CanSystemConnectionMemo memo)
2nd stage of initialization, invoked after the Constructor is complete.This needs to be connected to the initContext() method in implementing classes.
- Specified by:
initComponents
in interfaceCanPanelInterface
- Overrides:
initComponents
in classCanPanel
- Parameters:
memo
- system connection.
-
getTabs
protected final java.util.ArrayList<CbusNodeConfigTab> getTabs()
-
init
public void init()
Initialise the NodeConfigToolPane
-
notifyNodeSearchComplete
public void notifyNodeSearchComplete(int csfound, int ndfound)
Create a document-modal Dialog with node search results.- Parameters:
csfound
- number of Command Stationsndfound
- number of nodes
-
userViewChanged
protected void userViewChanged()
Notify this pane that the selected node or viewed tab has changed
-
getMenus
public java.util.List<javax.swing.JMenu> getMenus()
Creates a Menu List. Provide menu items to add to a menu bar.
-
setRestoreFcuActive
protected void setRestoreFcuActive(boolean isActive)
Set Restore from FCU Menu Item active as only 1 instance per NodeConfigToolPane allowed- Parameters:
isActive
- set true if Frame opened, else false to notify closed
-
getTitle
public java.lang.String getTitle()
Provide a recommended title for an enclosing frame.
-
getHelpTarget
public java.lang.String getHelpTarget()
Provide a help target string which an enclosing frame can provide as a help reference.This automatically provides a reference to the usual place for JMRI window-specific help pages that are named for the implementing class, but note this is a Pane class, not a Frame class.
- Overrides:
getHelpTarget
in classJmriPanel
- Returns:
- the target String
-
getEditEvFrame
public CbusNodeEditEventFrame getEditEvFrame()
Get the edit event frame this could be requested from CbusNodeEventDataModel button click to edit event, this class when it receives an event via drag n drop, creating new event from CbusNodeEventVarPane- Returns:
- the Frame
-
clearEditEventFrame
protected void clearEditEventFrame()
Receive notification from the frame that it has disposed
-
showConfirmThenSave
protected void showConfirmThenSave(@Nonnull CbusNode fromNode, @Nonnull CbusNode toNode, boolean teachNVs, boolean clearEvents, boolean teachEvents, @CheckForNull javax.swing.JFrame frame)
Show a Confirm before Save Dialogue Box then start teach process for NodeUsed in Node Backup restore, Restore from FCU, edit NV's Edit Event variables currently use a custom dialogue, not this
- Parameters:
fromNode
- Node to get data fromtoNode
- Node to send changes toteachNVs
- true to Teach NV'sclearEvents
- true to clear events before teaching new onesteachEvents
- true to teach eventsframe
- the frame to which dialogue boxes can be attached to
-
propertyChange
public void propertyChange(java.beans.PropertyChangeEvent ev)
- Specified by:
propertyChange
in interfacejava.beans.PropertyChangeListener
-
getNodeModel
@Nonnull protected CbusNodeTableDataModel getNodeModel()
Get the System Connection Node Model- Returns:
- System Connection Node Model
-
-