Class LncvProgPane
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- jmri.util.swing.JmriPanel
-
- jmri.jmrix.loconet.swing.LnPanel
-
- jmri.jmrix.loconet.swing.lncvprog.LncvProgPane
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,LocoNetListener
,LnPanelInterface
public class LncvProgPane extends LnPanel implements LocoNetListener
Frame for discovery and display of LocoNet LNCV boards. Derived from xbee node config. Verified with Digikeijs DR5033 hardware. Some of the message formats used in this class are Copyright Uhlenbrock.de and used with permission as part of the JMRI project. That permission does not extend to uses in other software products. If you wish to use this code, algorithm or these message formats outside of JMRI, please contact Uhlenbrock. Buttons in table row allows to add roster entry for device, and switch to the DecoderPro ops mode programmer.- 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 protected javax.swing.JTextField
addressField
protected javax.swing.JLabel
addressFieldLabel
protected int
adr
protected javax.swing.JToggleButton
allProgButton
protected int
art
protected javax.swing.JTextField
articleField
protected javax.swing.JLabel
articleFieldLabel
protected int
cv
protected javax.swing.JTextField
cvField
protected javax.swing.JLabel
cvFieldLabel
protected javax.swing.JCheckBox
directCheckBox
protected javax.swing.JToggleButton
modProgButton
protected javax.swing.JTable
moduleTable
protected LncvProgTableModel
moduleTableModel
protected javax.swing.JCheckBox
rawCheckBox
protected javax.swing.JButton
readButton
protected java.lang.String
reply
protected javax.swing.JTextArea
result
static int
ROW_HEIGHT
protected javax.swing.JLabel
statusText1
protected javax.swing.JLabel
statusText2
protected javax.swing.JPanel
tablePanel
protected int
val
protected javax.swing.JTextField
valueField
protected javax.swing.JLabel
valueFieldLabel
protected javax.swing.JButton
writeButton
(package private) boolean
writeConfirmed
-
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 LncvProgPane()
Constructor method
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
allProgButtonActionPerformed()
GENERALPROG button.void
allProgFinished(java.lang.String error)
AllProg Session callback.void
copyEntry(int art, int mod)
protected void
directActionPerformed()
void
dispose()
protected java.lang.String
getAddressEntry()
protected java.lang.String
getArticleEntry()
Testing methods.java.lang.String
getHelpTarget()
Provide a help target string which an enclosing frame can provide as a help reference.protected LncvDevice
getModule(int i)
protected java.lang.String
getMonitorContents()
protected javax.swing.JPanel
getMonitorPanel()
java.lang.String
getTitle()
Provide a recommended title for an enclosing frame.void
handleCloseEvent()
Give user feedback on closing of any open programming sessions when tool window is closed.protected javax.swing.JPanel
initButtonPanel()
void
initComponents()
Initialize the config windowvoid
initComponents(LocoNetSystemConnectionMemo memo)
2nd stage of initialization, invoked after the constructor is complete.protected javax.swing.JPanel
initStatusPanel()
void
message(LocoNetMessage m)
Member function that will be invoked by a LocoNetInterface implementation to forward a LocoNet message from the layout.void
modProgButtonActionPerformed()
Handle Start/End Module Prog button.void
readButtonActionPerformed()
Handle Read CV button, assemble LNCV read message.protected void
renumber(boolean range2)
Renumber the checkbox labels to match LED numbers.protected void
setCvFields(int cvNum, int cvVal)
protected void
setDirect(boolean range2)
Handle SetDirect button, assemble LNCV Direct Set message.void
writeButtonActionPerformed()
Handle Write button click, assemble LNCV write message.-
Methods inherited from class jmri.jmrix.loconet.swing.LnPanel
getTitle, getTitleHelper, initContext
-
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
-
-
-
-
Field Detail
-
allProgButton
protected javax.swing.JToggleButton allProgButton
-
modProgButton
protected javax.swing.JToggleButton modProgButton
-
readButton
protected javax.swing.JButton readButton
-
writeButton
protected javax.swing.JButton writeButton
-
articleField
protected javax.swing.JTextField articleField
-
addressField
protected javax.swing.JTextField addressField
-
cvField
protected javax.swing.JTextField cvField
-
valueField
protected javax.swing.JTextField valueField
-
directCheckBox
protected javax.swing.JCheckBox directCheckBox
-
rawCheckBox
protected javax.swing.JCheckBox rawCheckBox
-
moduleTable
protected javax.swing.JTable moduleTable
-
moduleTableModel
protected LncvProgTableModel moduleTableModel
-
ROW_HEIGHT
public static final int ROW_HEIGHT
-
tablePanel
protected javax.swing.JPanel tablePanel
-
statusText1
protected javax.swing.JLabel statusText1
-
statusText2
protected javax.swing.JLabel statusText2
-
articleFieldLabel
protected javax.swing.JLabel articleFieldLabel
-
addressFieldLabel
protected javax.swing.JLabel addressFieldLabel
-
cvFieldLabel
protected javax.swing.JLabel cvFieldLabel
-
valueFieldLabel
protected javax.swing.JLabel valueFieldLabel
-
result
protected javax.swing.JTextArea result
-
reply
protected java.lang.String reply
-
art
protected int art
-
adr
protected int adr
-
cv
protected int cv
-
val
protected int val
-
writeConfirmed
boolean writeConfirmed
-
-
Constructor Detail
-
LncvProgPane
public LncvProgPane()
Constructor method
-
-
Method Detail
-
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
-
getTitle
public java.lang.String getTitle()
Description copied from class:JmriPanel
Provide a recommended title for an enclosing frame.
-
initComponents
public void initComponents()
Initialize the config window- Overrides:
initComponents
in classJmriPanel
-
initComponents
public void initComponents(LocoNetSystemConnectionMemo memo)
Description copied from class:LnPanel
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 interfaceLnPanelInterface
- Overrides:
initComponents
in classLnPanel
- Parameters:
memo
- aLocoNetSystemConnectionMemo
object
-
getMonitorPanel
protected javax.swing.JPanel getMonitorPanel()
-
initButtonPanel
protected javax.swing.JPanel initButtonPanel()
-
initStatusPanel
protected javax.swing.JPanel initStatusPanel()
-
allProgButtonActionPerformed
public void allProgButtonActionPerformed()
GENERALPROG button.
-
modProgButtonActionPerformed
public void modProgButtonActionPerformed()
Handle Start/End Module Prog button.
-
readButtonActionPerformed
public void readButtonActionPerformed()
Handle Read CV button, assemble LNCV read message. Requires presence of memo.
-
writeButtonActionPerformed
public void writeButtonActionPerformed()
Handle Write button click, assemble LNCV write message. Requires presence of memo.
-
directActionPerformed
protected void directActionPerformed()
-
renumber
protected void renumber(boolean range2)
Renumber the checkbox labels to match LED numbers.- Parameters:
range2
- false for LEDs 0-15, true for LEDs 16-31
-
setDirect
protected void setDirect(boolean range2)
Handle SetDirect button, assemble LNCV Direct Set message. Requires presence of memo to send.- Parameters:
range2
- false for LEDs 0-15, true for LEDs 16-31
-
copyEntry
public void copyEntry(int art, int mod)
-
message
public void message(LocoNetMessage m)
Member function that will be invoked by a LocoNetInterface implementation to forward a LocoNet message from the layout. Compare toLnOpsModeProgrammer.message(jmri.jmrix.loconet.LocoNetMessage)
- Specified by:
message
in interfaceLocoNetListener
- Parameters:
m
- a message received and analysed for LNCV characteristics
-
allProgFinished
public void allProgFinished(java.lang.String error)
AllProg Session callback.- Parameters:
error
- feedback from Finish process
-
handleCloseEvent
public void handleCloseEvent()
Give user feedback on closing of any open programming sessions when tool window is closed.- See Also:
for actual closing of sessions
-
getArticleEntry
protected java.lang.String getArticleEntry()
Testing methods.- Returns:
- text currently in Article field
-
getAddressEntry
protected java.lang.String getAddressEntry()
-
getMonitorContents
protected java.lang.String getMonitorContents()
-
setCvFields
protected void setCvFields(int cvNum, int cvVal)
-
getModule
protected LncvDevice getModule(int i)
-
-