Class RosterFrame
- All Implemented Interfaces:
ComponentListener,WindowListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible,RootPaneContainer,WindowConstants,BeanInterface,RosterEntrySelector,RosterGroupSelector,ModifiedFlag,WindowInterface
- Direct Known Subclasses:
DecoderPro3Window
TODO: Several methods are copied from PaneProgFrame and should be refactored No programmer support yet (dummy object below). Color only covering borders. No reset toolbar support yet. No glass pane support (See DecoderPro3Panes class and usage below). Special panes (Roster entry, attributes, graphics) not included. How do you pick a programmer file? (hardcoded) Initialization needs partial deferral, too for 1st pane to appear.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class jmri.util.JmriJFrame
JmriJFrame.ScreenDimensionsNested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrameNested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrameNested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.TypeNested 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.FlipBufferStrategyNested classes/interfaces inherited from interface jmri.util.swing.WindowInterface
WindowInterface.Hint -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanprotected String(package private) final JRadioButtonMenuItem(package private) final JRadioButtonMenuItem(package private) final JRadioButtonMenuItem(package private) final JTextPane(package private) final JTextPane(package private) final JTextPane(package private) final JTextPane(package private) final JRadioButton(package private) final JTextPane(package private) JLabel(package private) static final ArrayList<RosterFrame>(package private) RosterGroupsPanel(package private) int(package private) boolean(package private) boolean(package private) final JTextPane(package private) boolean(package private) ResizableImagePanel(package private) JTextPane(package private) final JTextPane(package private) final JTextPane(package private) final ProgModeSelectorprotected JmriAbstractAction(package private) final JLabel(package private) final JRadioButton(package private) ConnectionConfig(package private) final JTextPane(package private) UserPreferencesManager(package private) final JButton(package private) final JButton(package private) String(package private) String(package private) ActionListener(package private) final ResourceBundle(package private) RosterEntry(package private) final JTextPane(package private) final JTextPane(package private) final JPanel(package private) PropertyChangeListener(package private) JSplitPane(package private) final JButton(package private) RosterTable(package private) ConnectionConfig(package private) final JRadioButton(package private) final JLabel(package private) final JLabel(package private) final Dimension(package private) final JButton(package private) final JButtonFields inherited from class jmri.util.swing.multipane.TwoPaneTBWindow
hideBottomPaneFields inherited from class jmri.util.JmriJFrame
allowInFrameServlet, properties, reuseFrameSavedPosition, reuseFrameSavedSized, windowInterfaceFields inherited from class javax.swing.JFrame
accessibleContext, rootPane, rootPaneCheckingEnabledFields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSORFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields inherited from interface jmri.jmrit.roster.RosterEntrySelector
SELECTED_ROSTER_ENTRIESFields inherited from interface jmri.jmrit.roster.rostergroup.RosterGroupSelector
SELECTED_ROSTER_GROUPFields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE -
Constructor Summary
ConstructorsConstructorDescriptionRosterFrame(String name) RosterFrame(String name, String menubarFile, String toolbarFile) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected voidallowQuit(boolean quitAllowed) For use when the DP3 window is called from another JMRI instance, set this to prevent the DP3 from shutting down JMRI when the window is closed.(package private) JPanelprotected final void(package private) boolean(package private) booleancheckIfEntrySelected(boolean allowMultiple) (package private) voidprotected voidcopyLoco()(package private) JComponent(package private) JComponentprotected void(package private) voidprotected voidenableRosterGroupMenuItems(boolean enable) protected void(package private) voidprotected Stringprotected JmriAbstractActionprotected ProgrammerConfigManagergetProperty(String key) Get the value of a property.getRemoteObject(String value) Get the currently selected roster entries.(package private) voidprotected voidprotected voidvoidhideGroupsPane(boolean hide) protected voidprotected voidboolean(package private) final voidlocoSelected(String id) An entry has been selected in the Roster Table, activate the bottom part of the window.protected voidprotected voidnewWindow(JmriAbstractAction action) protected voidprintLoco(boolean preview) Prepare a roster entry to be printed, and display a selection list.voidremoteCalls(String[] args) Match the first argument in the array against a locally-known method.(package private) JPanel(package private) voidprotected voidselectLoco(int dccAddress, boolean isLong, int mfgId, int modelId) Identify locomotive complete, act on it by setting the GUI.voidsetAllowQuit(boolean allowQuit) protected final voidsetBaseTitle(String baseTitle) protected voidsetNewWindowAction(JmriAbstractAction newWindowAction) voidsetProgrammerLaunch(int buttonId, String programmer, String buttonText) Simple method to change over the programmer buttons.voidsetSelectedRosterGroup(String rosterGroup) voidprotected voidprotected voidStart the identify operation after [Identify Loco] button pressed.protected voidstartProgrammer(DecoderFile decoderFile, RosterEntry re, String filename) protected voidCreate and display a status bar along the bottom edge of the Roster main pane.protected void(package private) void(package private) voidprotected voidHandle setting up and updating the GUI for the types of programmer available.voidThe JmriJFrame implementation callsJmriJFrame.handleModified().Methods inherited from class jmri.util.swing.multipane.TwoPaneTBWindow
addMainMenuBar, addMainStatusBar, addMainToolBar, addToStatusBox, addToStatusBox, buildGUI, configureFrame, dispose, getBottom, getMenu, getSplitPane, getToolBar, getTop, hideBottomPane, resetTopToPreferredSizesMethods inherited from class jmri.util.JmriJFrame
addHelpMenu, componentHidden, componentMoved, componentResized, componentShown, generateWindowRef, getAllowInFrameServlet, getEscapeKeyAction, getEscapeKeyClosesWindow, getFrame, getFrame, getFrameList, getFrameList, getIndexedProperty, getMaximumSize, getModifiedFlag, getPreferredSize, getPropertyNames, getSavePosition, getSaveSize, getScreenDimensions, getWindowFrameRef, getWindowInterface, handleModified, hasIndexedProperty, hasProperty, initComponents, makePrivateWindow, makePublicWindow, markWindowModified, multipleInstances, pack, setAllowInFrameServlet, setEscapeKeyAction, setEscapeKeyClosesWindow, setFrameLocation, setIndexedProperty, setModifiedFlag, setProperty, setSavePosition, setSaveSize, setShutDownTask, setWindowInterface, show, show, storeValues, undecorate, windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpenedMethods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, updateMethods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setUndecoratedMethods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFrontMethods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMinimumSize, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.awt.MenuContainer
getFont, postEventMethods inherited from interface jmri.jmrit.roster.RosterEntrySelector
addPropertyChangeListener, addPropertyChangeListener, removePropertyChangeListener, removePropertyChangeListenerMethods inherited from interface jmri.jmrit.roster.rostergroup.RosterGroupSelector
addPropertyChangeListener, addPropertyChangeListener, removePropertyChangeListener, removePropertyChangeListener
-
Field Details
-
frameInstances
-
allowQuit
-
baseTitle
-
newWindowAction
-
contextEdit
-
contextOps
-
contextService
-
dateUpdated
-
dccAddress
-
decoderFamily
-
decoderModel
-
edit
-
filename
-
firstHelpLabel
-
groupSplitPaneLocation
-
groups
-
hideGroups
boolean hideGroups -
hideRosterImage
boolean hideRosterImage -
id
-
inStartProgrammer
boolean inStartProgrammer -
locoImage
-
maxSpeed
-
mfg
-
modePanel
-
model
-
operationsModeProgrammerLabel
-
ops
-
opsModeProCon
-
owner
-
prefsMgr
-
prog1Button
-
prog2Button
-
programModeListener
-
programmer1
-
programmer2
-
rb
-
re
-
roadName
-
roadNumber
-
rosterDetailPanel
-
rosterEntryUpdateListener
-
rosterGroupSplitPane
-
rosterMedia
-
rtable
-
serModeProCon
-
service
-
serviceModeProgrammerLabel
-
statusField
-
summaryPaneDim
-
throttleLabels
-
throttleLaunch
-
-
Constructor Details
-
RosterFrame
public RosterFrame() -
RosterFrame
-
RosterFrame
-
-
Method Details
-
additionsToToolBar
-
allowQuit
For use when the DP3 window is called from another JMRI instance, set this to prevent the DP3 from shutting down JMRI when the window is closed.- Parameters:
quitAllowed- true if closing window should quit application; false otherwise
-
bottomRight
-
buildWindow
-
checkIfEntrySelected
boolean checkIfEntrySelected() -
checkIfEntrySelected
-
closeWindow
-
copyLoco
-
createBottom
-
createTop
-
deleteLoco
-
editMediaButton
void editMediaButton() -
enableRosterGroupMenuItems
-
exportLoco
-
formatTextAreaAsLabel
-
isAllowQuit
- Returns:
- Will closing the window quit JMRI?
-
setAllowQuit
- Parameters:
allowQuit- Set state to either close JMRI or just the roster window
-
getBaseTitle
- Returns:
- the baseTitle
-
setBaseTitle
- Parameters:
baseTitle- the baseTitle to set
-
getNewWindowAction
- Returns:
- the newWindowAction
-
setNewWindowAction
- Parameters:
newWindowAction- the newWindowAction to set
-
setTitle
-
getProperty
Description copied from class:JmriJFrameGet the value of a property.NOTE Implementing methods must not call
Bean.getProperty(), as doing so will cause a stack overflow. Implementing methods may callBeans.getIntrospectedProperty()instead. Subclasses should override this method with something more direct and faster- Specified by:
getPropertyin interfaceBeanInterface- Overrides:
getPropertyin classJmriJFrame- Parameters:
key- name of the property- Returns:
- The value of the property or null
-
getRemoteObject
-
getSelectedRosterEntries
Description copied from interface:RosterEntrySelectorGet the currently selected roster entries. Since the selection could contain multiple roster entries, this returns an array of RosterEntry instead of a single RosterEntry.- Specified by:
getSelectedRosterEntriesin interfaceRosterEntrySelector- Returns:
- an array of RosterEntries
-
getAllRosterEntries
-
getSelectedRosterGroup
- Specified by:
getSelectedRosterGroupin interfaceRosterGroupSelector
-
getProgrammerConfigManager
-
handleQuit
-
helpMenu
-
hideGroups
-
hideGroupsPane
-
hideRosterImage
-
hideSummary
-
locoSelected
An entry has been selected in the Roster Table, activate the bottom part of the window.- Parameters:
id- ID of the selected roster entry
-
newWindow
-
newWindow
-
printLoco
Prepare a roster entry to be printed, and display a selection list.- Parameters:
preview- true if output should go to a Preview pane on screen, false to output to a printer (dialog)- See Also:
-
remoteCalls
Match the first argument in the array against a locally-known method.- Specified by:
remoteCallsin classTwoPaneTBWindow- Parameters:
args- Array of arguments, we take with element 0
-
rosterDetails
-
saveWindowDetails
void saveWindowDetails() -
selectLoco
Identify locomotive complete, act on it by setting the GUI. This will fire "GUI changed" events which will reset the decoder GUI.- Parameters:
dccAddress- address of locomotiveisLong- true if address is long; false if shortmfgId- manufacturer id as in decodermodelId- model id as in decoder
-
setProgrammerLaunch
Simple method to change over the programmer buttons.TODO This should be implemented with the buttons in their own class etc. but this will work for now.
- Parameters:
buttonId- 1 or 2; use 1 for basic programmer; 2 for comprehensive programmerprogrammer- name of programmerbuttonText- button title
-
setSelectedRosterGroup
-
showPopup
-
startIdentifyLoco
Start the identify operation after [Identify Loco] button pressed.This defines what happens when Identify is done.
-
startProgrammer
-
statusBar
Create and display a status bar along the bottom edge of the Roster main pane.TODO This status bar needs sorting out properly
-
systemsMenu
-
updateDetails
void updateDetails() -
updateProgMode
void updateProgMode() -
updateProgrammerStatus
Handle setting up and updating the GUI for the types of programmer available.- Parameters:
evt- the triggering event; if not null and if a removal of a ProgrammerManager, care will be taken not to trigger the automatic creation of a new ProgrammerManager
-
windowClosing
Description copied from class:JmriJFrameThe JmriJFrame implementation callsJmriJFrame.handleModified().- Specified by:
windowClosingin interfaceWindowListener- Overrides:
windowClosingin classJmriJFrame
-