Package jmri.jmrix.openlcb.swing.send
Class OpenLcbCanSendPane
- 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.openlcb.swing.send.OpenLcbCanSendPane
-
- All Implemented Interfaces:
java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,java.util.EventListener,javax.accessibility.Accessible,AbstractMRListener,CanListener,CanPanelInterface
public class OpenLcbCanSendPane extends CanPanel implements CanListener
User interface for sending OpenLCB CAN frames to exercise the systemWhen sending a sequence of operations:
- Send the next message and start a timer
- When the timer trips, repeat if buttons still down.
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
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) ClientActionsactions(package private) MemorySpaceSelectoraddrSpace(package private) AliasMapaliasMap(package private) javax.swing.JButtoncdiButton(package private) javax.swing.JTextFieldconfigAddressField(package private) javax.swing.JTextFieldconfigNumberField(package private) Connectionconnection(package private) javax.swing.JTextFielddatagramContentsField(package private) OlcbInterfaceiface(package private) javax.swing.JLabeljLabel1(package private) static intMAXSEQUENCE(package private) MemoryConfigurationServicemcs(package private) javax.swing.JTextField[]mDelayField(package private) intmNextSequenceElement(package private) javax.swing.JTextField[]mPacketField(package private) javax.swing.JToggleButtonmRunButton(package private) javax.swing.JCheckBox[]mUseField(package private) NodeSelectornodeSelector(package private) javax.swing.JTextFieldpacketTextField(package private) javax.swing.JTextFieldreadDataField(package private) javax.swing.JButtonsendButton(package private) javax.swing.JFormattedTextFieldsendEventField(package private) javax.swing.JTextFieldsrcAliasField(package private) NodeIDsrcNodeID(package private) MimicNodeStorestore(package private) javax.swing.Timertimer(package private) javax.swing.JComboBox<java.lang.String>validitySelector(package private) javax.swing.JTextFieldwriteDataField-
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 OpenLcbCanSendPane()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) javax.swing.JComponentaddLineLabel(java.lang.String text)(package private) javax.swing.JComponentaddLineLabel(java.lang.String text, javax.swing.JComponent c)voidclearCache(java.awt.event.ActionEvent e)(package private) CanMessagecreatePacket(java.lang.String s)Create a well-formed message from a String String is expected to be space seperated hex bytes or CbusAddress, e.g.: 12 34 56 +n4e1(package private) NodeIDdestNodeID()voiddispose()When the window closes, stop any sequences running(package private) EventIDeventID()java.lang.StringgetHelpTarget()Provide a help target string which an enclosing frame can provide as a help reference.java.lang.StringgetTitle()Provide a recommended title for an enclosing frame.voidinitComponents(CanSystemConnectionMemo memo)2nd stage of initialization, invoked after the Constructor is complete.voidmessage(CanMessage m)Don't pay attention to messagesvoidopenCdiPane()voidreadPerformed(java.awt.event.ActionEvent e)voidreply(CanReply m)Don't pay attention to repliesvoidrestartNode(java.awt.event.ActionEvent e)protected voidrestartTimer(int delay)Internal routine to handle timer starts and restartsvoidrunButtonActionPerformed(java.awt.event.ActionEvent e)Run button pressed down, start the sequence operationvoidsendButtonActionPerformed(java.awt.event.ActionEvent e)voidsendCimPerformed(java.awt.event.ActionEvent e)voidsendConsumerID(java.awt.event.ActionEvent e)voidsendDatagramPerformed(java.awt.event.ActionEvent e)voidsendDatagramReply(java.awt.event.ActionEvent e)voidsendEventPerformed(java.awt.event.ActionEvent e)(package private) voidsendNextItem()Send next item; may be used for the first item or when a delay has elapsed.voidsendProducerID(java.awt.event.ActionEvent e)voidsendReqConsumers(java.awt.event.ActionEvent e)voidsendReqProducers(java.awt.event.ActionEvent e)voidsendRequestEvents(java.awt.event.ActionEvent e)voidsendRequestPip(java.awt.event.ActionEvent e)voidsendRequestSnip(java.awt.event.ActionEvent e)voidsendVerifyNodeGlobal(java.awt.event.ActionEvent e)voidsendVerifyNodeGlobalID(java.awt.event.ActionEvent e)protected voidsetCdiButton()Set whether Open CDI button is enabled based on whether the selected node has CDI in its PIP(package private) voidstartSequenceDelay()Echo has been heard, start delay for next packetprotected voidtimeout()Internal routine to handle a timeout and send next item(package private) EventStatevalidity()voidwritePerformed(java.awt.event.ActionEvent e)-
Methods inherited from class jmri.jmrix.can.swing.CanPanel
getMemo, initContext, prependConnToString
-
Methods inherited from class jmri.util.swing.JmriPanel
getMenus, 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
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jmri.jmrix.can.CanListener
addTc, addTc, removeTc, removeTc
-
-
-
-
Field Detail
-
jLabel1
final javax.swing.JLabel jLabel1
-
sendButton
final javax.swing.JButton sendButton
-
packetTextField
final javax.swing.JTextField packetTextField
-
MAXSEQUENCE
static final int MAXSEQUENCE
- See Also:
- Constant Field Values
-
mPacketField
final javax.swing.JTextField[] mPacketField
-
mUseField
final javax.swing.JCheckBox[] mUseField
-
mDelayField
final javax.swing.JTextField[] mDelayField
-
mRunButton
final javax.swing.JToggleButton mRunButton
-
srcAliasField
final javax.swing.JTextField srcAliasField
-
nodeSelector
NodeSelector nodeSelector
-
sendEventField
final javax.swing.JFormattedTextField sendEventField
-
datagramContentsField
final javax.swing.JTextField datagramContentsField
-
configNumberField
final javax.swing.JTextField configNumberField
-
configAddressField
final javax.swing.JTextField configAddressField
-
readDataField
final javax.swing.JTextField readDataField
-
writeDataField
final javax.swing.JTextField writeDataField
-
addrSpace
final MemorySpaceSelector addrSpace
-
validitySelector
final javax.swing.JComboBox<java.lang.String> validitySelector
-
cdiButton
javax.swing.JButton cdiButton
-
connection
Connection connection
-
store
MimicNodeStore store
-
iface
OlcbInterface iface
-
actions
ClientActions actions
-
mNextSequenceElement
int mNextSequenceElement
-
timer
javax.swing.Timer timer
-
-
Constructor Detail
-
OpenLcbCanSendPane
public OpenLcbCanSendPane()
-
-
Method Detail
-
initComponents
public void initComponents(CanSystemConnectionMemo memo)
Description copied from class:CanPanel2nd stage of initialization, invoked after the Constructor is complete.This needs to be connected to the initContext() method in implementing classes.
- Specified by:
initComponentsin interfaceCanPanelInterface- Overrides:
initComponentsin classCanPanel- Parameters:
memo- system connection.
-
setCdiButton
protected void setCdiButton()
Set whether Open CDI button is enabled based on whether the selected node has CDI in its PIP
-
getHelpTarget
public java.lang.String getHelpTarget()
Description copied from class:JmriPanelProvide 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:
getHelpTargetin classJmriPanel- Returns:
- the target String
-
getTitle
public java.lang.String getTitle()
Description copied from class:JmriPanelProvide a recommended title for an enclosing frame.
-
addLineLabel
javax.swing.JComponent addLineLabel(java.lang.String text)
-
addLineLabel
javax.swing.JComponent addLineLabel(java.lang.String text, javax.swing.JComponent c)
-
sendButtonActionPerformed
public void sendButtonActionPerformed(java.awt.event.ActionEvent e)
-
sendCimPerformed
public void sendCimPerformed(java.awt.event.ActionEvent e)
-
destNodeID
NodeID destNodeID()
-
sendVerifyNodeGlobal
public void sendVerifyNodeGlobal(java.awt.event.ActionEvent e)
-
sendVerifyNodeGlobalID
public void sendVerifyNodeGlobalID(java.awt.event.ActionEvent e)
-
sendRequestEvents
public void sendRequestEvents(java.awt.event.ActionEvent e)
-
sendRequestPip
public void sendRequestPip(java.awt.event.ActionEvent e)
-
sendRequestSnip
public void sendRequestSnip(java.awt.event.ActionEvent e)
-
sendEventPerformed
public void sendEventPerformed(java.awt.event.ActionEvent e)
-
sendReqConsumers
public void sendReqConsumers(java.awt.event.ActionEvent e)
-
validity
EventState validity()
-
sendConsumerID
public void sendConsumerID(java.awt.event.ActionEvent e)
-
sendReqProducers
public void sendReqProducers(java.awt.event.ActionEvent e)
-
sendProducerID
public void sendProducerID(java.awt.event.ActionEvent e)
-
sendDatagramPerformed
public void sendDatagramPerformed(java.awt.event.ActionEvent e)
-
sendDatagramReply
public void sendDatagramReply(java.awt.event.ActionEvent e)
-
restartNode
public void restartNode(java.awt.event.ActionEvent e)
-
clearCache
public void clearCache(java.awt.event.ActionEvent e)
-
readPerformed
public void readPerformed(java.awt.event.ActionEvent e)
-
writePerformed
public void writePerformed(java.awt.event.ActionEvent e)
-
openCdiPane
public void openCdiPane()
-
restartTimer
protected void restartTimer(int delay)
Internal routine to handle timer starts and restarts- Parameters:
delay- milliseconds to delay
-
timeout
protected void timeout()
Internal routine to handle a timeout and send next item
-
runButtonActionPerformed
public void runButtonActionPerformed(java.awt.event.ActionEvent e)
Run button pressed down, start the sequence operation- Parameters:
e- event from GUI
-
startSequenceDelay
void startSequenceDelay()
Echo has been heard, start delay for next packet
-
sendNextItem
void sendNextItem()
Send next item; may be used for the first item or when a delay has elapsed.
-
createPacket
CanMessage createPacket(java.lang.String s)
Create a well-formed message from a String String is expected to be space seperated hex bytes or CbusAddress, e.g.: 12 34 56 +n4e1- Parameters:
s- string of spaced hex byte codes- Returns:
- The packet, with contents filled-in
-
message
public void message(CanMessage m)
Don't pay attention to messages- Specified by:
messagein interfaceCanListener- Parameters:
m- the CanMessage being sent.
-
reply
public void reply(CanReply m)
Don't pay attention to replies- Specified by:
replyin interfaceCanListener- Parameters:
m- the CanReply being received.
-
-