Package jmri.jmrix.openlcb.swing.monitor
Class MonitorPane
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- jmri.util.swing.JmriPanel
-
- jmri.jmrix.AbstractMonPane
-
- jmri.jmrix.openlcb.swing.monitor.MonitorPane
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,AbstractMRListener
,CanListener
,CanPanelInterface
public class MonitorPane extends AbstractMonPane implements CanListener, CanPanelInterface
Frame displaying (and logging) OpenLCB (CAN) frames- 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) AliasMap
aliasMap
(package private) java.lang.String
eventAllCheck
(package private) javax.swing.JCheckBox
eventAllCheckBox
Show all EventIDs in the message each on a separate line(package private) java.lang.String
eventCheck
(package private) javax.swing.JCheckBox
eventCheckBox
Show the first EventID in the message on a separate line(package private) CanSystemConnectionMemo
memo
(package private) MessageBuilder
messageBuilder
(package private) java.lang.String
nodeNameCheck
(package private) javax.swing.JCheckBox
nodeNameCheckBox
show source node name on a separate line when available(package private) OlcbInterface
olcbInterface
(package private) IdTagManager
tagManager
-
Fields inherited from class jmri.jmrix.AbstractMonPane
alwaysOnTopCheckBox, autoScrollCheckBox, clearButton, copyToClipBoardButton, enterButton, entryField, filterField, filterLabel, freezeButton, jScrollPane1, linesBuffer, monTextPane, openFileChooserButton, rawCheckBox, startLogButton, stopLogButton, timeCheckBox
-
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 MonitorPane()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addCustomControlPanes(javax.swing.JPanel parent)
Expand the display with additional options specific to the hardware.void
dispose()
(package private) void
format(java.lang.String prefix, boolean extended, int header, int len, int[] content)
(package private) java.lang.String
formatFrame(boolean extended, int header, int len, int[] content)
(package private) java.lang.String
formatTimeMessage(int[] content)
(package private) java.util.List<Message>
frameToMessages(int header, int len, int[] content)
java.lang.String
getHelpTarget()
Provide a help target string which an enclosing frame can provide as a help reference.protected java.lang.String
getOpCodeForFilter(java.lang.String raw)
Get initial part of frame contents for filtering.java.lang.String
getTitle()
Provide a recommended title for an enclosing frame.protected void
init()
Initialize the data source.void
initComponents(CanSystemConnectionMemo memo)
2nd stage of initialization, invoked after the Constructor is complete.void
initContext(java.lang.Object context)
3rd stage of initialization, invoked after Swing components exist.protected boolean
isFiltered(java.lang.String raw)
Check if the raw data starts with the filter string, with the comparison done in upper case.void
message(CanMessage l)
Called when an outgoing message is sent to the CAN Network.void
reply(CanReply l)
Called when an incoming CanFrame is received from the CAN Network.-
Methods inherited from class jmri.jmrix.AbstractMonPane
addDataPanes, clearButtonActionPerformed, configureDataPane, copyToClipBoardButtonActionPerformed, createDataPanes, enterButtonActionPerformed, getFilePathAndName, getFilterText, getFrameText, getInitialPreferredLineCount, getInitialPreferredLineLength, getTextArea, initComponents, logMessage, logMessage, logMessage, nextLine, nextLineWithTime, openFileChooserButtonActionPerformed, setFilterText, setFixedWidthFont, startLogButtonActionPerformed, stopLogButtonActionPerformed
-
Methods inherited from class jmri.util.swing.JmriPanel
getMenus, getMinimumDimension, getWindowInterface, 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
-
messageBuilder
MessageBuilder messageBuilder
-
olcbInterface
OlcbInterface olcbInterface
-
tagManager
IdTagManager tagManager
-
nodeNameCheckBox
final javax.swing.JCheckBox nodeNameCheckBox
show source node name on a separate line when available
-
eventCheckBox
final javax.swing.JCheckBox eventCheckBox
Show the first EventID in the message on a separate line
-
eventAllCheckBox
final javax.swing.JCheckBox eventAllCheckBox
Show all EventIDs in the message each on a separate line
-
nodeNameCheck
final java.lang.String nodeNameCheck
-
eventCheck
final java.lang.String eventCheck
-
eventAllCheck
final java.lang.String eventAllCheck
-
-
Constructor Detail
-
MonitorPane
public MonitorPane()
-
-
Method Detail
-
initContext
public void initContext(java.lang.Object context)
Description copied from class:JmriPanel
3rd stage of initialization, invoked after Swing components exist.- Overrides:
initContext
in classJmriPanel
- Parameters:
context
- the context that this panel may be initialized with
-
initComponents
public void initComponents(CanSystemConnectionMemo memo)
Description copied from interface:CanPanelInterface
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
- Parameters:
memo
- system connection.
-
getTitle
public java.lang.String getTitle()
Description copied from class:AbstractMonPane
Provide a recommended title for an enclosing frame.- Specified by:
getTitle
in classAbstractMonPane
- Returns:
- the title; a null value will be treated as "" by the 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 classAbstractMonPane
- Returns:
- the target String
-
init
protected void init()
Description copied from class:AbstractMonPane
Initialize the data source.This is invoked at the end of the GUI initialization phase. Subclass implementations should connect to their data source here.
- Specified by:
init
in classAbstractMonPane
-
dispose
public void dispose()
Description copied from class:AbstractMonPane
- Overrides:
dispose
in classAbstractMonPane
-
addCustomControlPanes
protected void addCustomControlPanes(javax.swing.JPanel parent)
Description copied from class:AbstractMonPane
Expand the display with additional options specific to the hardware.- Overrides:
addCustomControlPanes
in classAbstractMonPane
- Parameters:
parent
- a Panel (with vertical BoxLayout); overrides should add a new Panel with horizontal BoxLayout to hold the additional options.
-
formatFrame
java.lang.String formatFrame(boolean extended, int header, int len, int[] content)
-
frameToMessages
java.util.List<Message> frameToMessages(int header, int len, int[] content)
-
format
void format(java.lang.String prefix, boolean extended, int header, int len, int[] content)
-
formatTimeMessage
java.lang.String formatTimeMessage(int[] content)
-
isFiltered
protected boolean isFiltered(java.lang.String raw)
Check if the raw data starts with the filter string, with the comparison done in upper case. If matched, the line is filtered out.- Overrides:
isFiltered
in classAbstractMonPane
- Parameters:
raw
- A string containing the raw message hex information, in ASCII encoding, with some "header" information pre-pended.- Returns:
- True if the opcode in the raw message matches one of the "filter" opcodes. False if the opcode does not match any of the "filter" opcodes.
-
getOpCodeForFilter
protected java.lang.String getOpCodeForFilter(java.lang.String raw)
Get initial part of frame contents for filtering.- Overrides:
getOpCodeForFilter
in classAbstractMonPane
- Parameters:
raw
- byte sequence- Returns:
- the string without the leading ]
-
message
public void message(CanMessage l)
Description copied from interface:CanListener
Called when an outgoing message is sent to the CAN Network.- Specified by:
message
in interfaceCanListener
- Parameters:
l
- the CanMessage being sent.
-
reply
public void reply(CanReply l)
Description copied from interface:CanListener
Called when an incoming CanFrame is received from the CAN Network.- Specified by:
reply
in interfaceCanListener
- Parameters:
l
- the CanReply being received.
-
-