Class ProgServiceModePane
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- jmri.jmrit.progsupport.ProgModeSelector
-
- jmri.jmrit.progsupport.ProgServiceModePane
-
- All Implemented Interfaces:
java.awt.event.ActionListener,java.awt.image.ImageObserver,java.awt.MenuContainer,java.beans.PropertyChangeListener,java.io.Serializable,java.util.EventListener,javax.accessibility.Accessible
public class ProgServiceModePane extends ProgModeSelector implements java.beans.PropertyChangeListener, java.awt.event.ActionListener
Provide a JPanel to configure the service mode (Global) programmer.The using code should get a configured programmer with getProgrammer. Since there's only one service mode programmer, maybe this isn't critical, but it's a good idea for the future.
A ProgModePane may "share" between one of these and a ProgOpsModePane, which means that there might be _none_ of these buttons selected. When that happens, the mode of the underlying programmer is left unchanged and no message is propagated.
Note that you should call the dispose() method when you're really done, so that a ProgModePane object can disconnect its listeners.
This file is part of JMRI.JMRI is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation. See the "COPYING" file for a copy of this license.
JMRI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
- 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) java.util.HashMap<ProgrammingMode,javax.swing.JRadioButton>buttonMap(package private) java.util.ArrayList<javax.swing.JRadioButton>buttonPool(package private) javax.swing.ButtonGroupmodeGroup(package private) javax.swing.JComboBox<GlobalProgrammerManager>progBox-
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 ProgServiceModePane(int direction)ProgServiceModePane(int direction, javax.swing.ButtonGroup group)Create a new Programmer Service Mode Pane.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent e)Listen to buttons for mode changesvoiddispose()Clean up when done.java.util.List<GlobalProgrammerManager>getMgrList()Get the list of global managers.ProgrammergetProgrammer()Get the selected programmerbooleanisSelected()Are any of the modes selected?(package private) voidprogrammerSelected()reload the interface with the new programmersvoidpropertyChange(java.beans.PropertyChangeEvent e)Listen to programmer for mode changes(package private) voidsetGuiFromProgrammer()-
Methods inherited from class jmri.jmrit.progsupport.ProgModeSelector
setEnabled
-
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, 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
-
modeGroup
javax.swing.ButtonGroup modeGroup
-
buttonMap
java.util.HashMap<ProgrammingMode,javax.swing.JRadioButton> buttonMap
-
progBox
javax.swing.JComboBox<GlobalProgrammerManager> progBox
-
buttonPool
java.util.ArrayList<javax.swing.JRadioButton> buttonPool
-
-
Constructor Detail
-
ProgServiceModePane
public ProgServiceModePane(int direction)
- Parameters:
direction- controls layout, either BoxLayout.X_AXIS or BoxLayout.Y_AXIS
-
ProgServiceModePane
public ProgServiceModePane(int direction, javax.swing.ButtonGroup group)
Create a new Programmer Service Mode Pane.- Parameters:
direction- controls layout, either BoxLayout.X_AXIS or BoxLayout.Y_AXISgroup- mode button group.
-
-
Method Detail
-
getProgrammer
public Programmer getProgrammer()
Get the selected programmer- Specified by:
getProgrammerin classProgModeSelector- Returns:
- the programmer.
-
isSelected
public boolean isSelected()
Are any of the modes selected?- Specified by:
isSelectedin classProgModeSelector- Returns:
- true is any button is selected
-
getMgrList
@Nonnull public java.util.List<GlobalProgrammerManager> getMgrList()
Get the list of global managers.- Returns:
- empty list if none
-
programmerSelected
void programmerSelected()
reload the interface with the new programmers
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent e)
Listen to buttons for mode changes- Specified by:
actionPerformedin interfacejava.awt.event.ActionListener
-
propertyChange
public void propertyChange(java.beans.PropertyChangeEvent e)
Listen to programmer for mode changes- Specified by:
propertyChangein interfacejava.beans.PropertyChangeListener
-
setGuiFromProgrammer
void setGuiFromProgrammer()
-
dispose
public void dispose()
Description copied from class:ProgModeSelectorClean up when done. Required.- Specified by:
disposein classProgModeSelector
-
-