Class LoaderPane
- All Implemented Interfaces:
ActionListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible,LnPanelInterface
This version relies on the file contents interpretation mechanisms built into the readHex() methods found in class jmri.jmrit.MemoryContents to automatically interpret the file's addressing type - either 16-bit or 24-bit addressing. The interpreted addressing type is reported in the pane after a file is read. The user cannot select the addressing type.
This version relies on the file contents checking mechanisms built into the readHex() methods found in class jmri.jmrit.MemoryContents to check for a wide variety of possible issues in the contents of the firmware update file. Any exception thrown by at method is used to select an error message to display in the status line of the pane.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescription(package private) JTextField(package private) JRadioButton(package private) JRadioButton(package private) JRadioButton(package private) JRadioButton(package private) JRadioButton(package private) JTextField(package private) int(package private) JTextField(package private) JTextField(package private) int(package private) int(package private) JTextField(package private) ButtonGroup(package private) JTextFieldprotected LocoNetSystemConnectionMemoLnPanelInterface implementation makes "memo" object available as convenience(package private) JTextField(package private) JTextField(package private) static int(package private) static int(package private) static int(package private) static int(package private) static int(package private) ButtonGroup(package private) JTextField(package private) intFields inherited from class jmri.jmrix.AbstractLoaderPane
abortButton, abortOperation, addressSizeButtonGroup, bar, inputContent, loadButton, selectButton, status, verifyButtonFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected voidaddChooserFilters(JFileChooser chooser) Add filter(s) for possible types to the input file chooser.protected voidInclude code to add additional options here.protected voiddoLoad()protected voiddoVerify()Provide a help target string which an enclosing frame can provide as a help reference.getTitle()Provide a recommended title for an enclosing frame.LnPanelInterface implementation creates standard form of title.protected voidhandleOptionsInFileContent(MemoryContents inputContent) voidThis gets invoked early.void2nd stage of initialization, invoked after the constructor is complete.voidinitContext(Object context) 3rd stage of initialization, invoked after Swing components exist.protected booleanChecks the values in the GUI text boxes to determine if any are invalid.(package private) voidsendOne(int pxct2, int d1, int d2, int d3, int d4, int d5, int d6, int d7, int d8) protected voidprotected voidConditionally enables or disables the Download and Verify GUI buttons based on the validity of the parameter values in the GUI and the state of the memory contents object.Methods inherited from class jmri.jmrix.AbstractLoaderPane
clearInputFileName, disableDownloadVerifyButtons, doRead, enableDownloadVerifyButtons, intParameterIsValid, isOperationAborted, setOperationAbortedMethods inherited from class jmri.util.swing.JmriPanel
dispose, getMenus, getMinimumDimension, getWindowInterface, isMultipleInstances, setWindowInterfaceMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods 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, updateMethods 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, validateTreeMethods 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 Details
-
memo
LnPanelInterface implementation makes "memo" object available as convenience -
bootload
-
mfg
-
developer
-
product
-
hardware
-
software
-
delay
-
eestart
-
eraseBlockSize
-
checkhardwareno
-
checkhardwareexact
-
checkhardwaregreater
-
hardgroup
-
checksoftwareno
-
checksoftwareless
-
softgroup
-
PXCT2SETUP
-
PXCT2SENDADDRESS
-
PXCT2SENDDATA
-
PXCT2VERIFYDATA
-
PXCT2ENDOPERATION
-
startaddr
int startaddr -
endaddr
int endaddr -
delayval
int delayval -
eestartval
int eestartval
-
-
Constructor Details
-
LoaderPane
public LoaderPane()
-
-
Method Details
-
initContext
3rd stage of initialization, invoked after Swing components exist.- Overrides:
initContextin classJmriPanel- Parameters:
context- the context that this panel may be initialized with
-
initComponents
This gets invoked early. We don't want it to do anything, so we just fail to pass it up. Instead, we wait for the later call of initComponents(LocoNetSystemConnectionMemo memo)- Overrides:
initComponentsin classAbstractLoaderPane
-
initComponents
2nd stage of initialization, invoked after the constructor is complete.This needs to be connected to the initContext() method in implementing classes.
- Specified by:
initComponentsin interfaceLnPanelInterface- Parameters:
memo- aLocoNetSystemConnectionMemoobject
-
getTitle
LnPanelInterface implementation creates standard form of title.- Parameters:
menuTitle- is a string containing the name of the tool- Returns:
- a new string containing the connection's UserName plus the name of the tool
-
getHelpTarget
Description copied from class:AbstractLoaderPaneProvide 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.
- Specified by:
getHelpTargetin classAbstractLoaderPane- Returns:
- the target String
-
getTitle
Description copied from class:JmriPanelProvide a recommended title for an enclosing frame. -
addOptionsPanel
Description copied from class:AbstractLoaderPaneInclude code to add additional options here. By convention, if you include visible options, follow with a JSeparator.- Overrides:
addOptionsPanelin classAbstractLoaderPane
-
handleOptionsInFileContent
- Overrides:
handleOptionsInFileContentin classAbstractLoaderPane
-
addChooserFilters
Add filter(s) for possible types to the input file chooser.- Overrides:
addChooserFiltersin classAbstractLoaderPane- Parameters:
chooser- a JFileChooser to which the filter is to be added
-
doLoad
- Overrides:
doLoadin classAbstractLoaderPane
-
doVerify
- Overrides:
doVerifyin classAbstractLoaderPane
-
sendOne
-
setDefaultFieldValues
- Overrides:
setDefaultFieldValuesin classAbstractLoaderPane
-
parametersAreValid
Checks the values in the GUI text boxes to determine if any are invalid. Intended for use immediately after reading a firmware file for the purpose of validating any key/value pairs found in the file. Also intended for use immediately before a "verify" or "download" operation to check that the user has not changed any of the GUI text values to ones that are unsupported.Note that this method cannot guarantee that the values are suitable for the hardware being updated and/or for the particular firmware information which was read from the firmware file.
- Overrides:
parametersAreValidin classAbstractLoaderPane- Returns:
- false if one or more GUI text box contains an invalid value
-
updateDownloadVerifyButtons
Conditionally enables or disables the Download and Verify GUI buttons based on the validity of the parameter values in the GUI and the state of the memory contents object.- Overrides:
updateDownloadVerifyButtonsin classAbstractLoaderPane
-
actionPerformed
Description copied from class:AbstractLoaderPane- Specified by:
actionPerformedin interfaceActionListener- Overrides:
actionPerformedin classAbstractLoaderPane
-