Package jmri.jmrix
Class JmrixConfigPane
- java.lang.Object
- 
- java.awt.Component
- 
- java.awt.Container
- 
- javax.swing.JComponent
- 
- javax.swing.JPanel
- 
- jmri.jmrix.JmrixConfigPane
 
 
 
 
 
- 
- All Implemented Interfaces:
- java.awt.image.ImageObserver,- java.awt.MenuContainer,- java.io.Serializable,- javax.accessibility.Accessible,- JmriServiceProviderInterface,- PreferencesPanel
 - Direct Known Subclasses:
- StreamConfigPane
 
 public class JmrixConfigPane extends javax.swing.JPanel implements PreferencesPanel Provide GUI to configure communications links.This is really just a catalog of connections to classes within the systems. Reflection is used to reduce coupling at load time. Objects of this class are based on an underlying ConnectionConfig implementation, which in turn is obtained from the InstanceManager. Those must be created at load time by the ConfigXml process, or in some Application class. The classes referenced are the specific subclasses of ConnectionConfigwhich provides the methods providing data to the configuration GUI, and responding to its changes.- See Also:
- Serialized Form
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class javax.swing.JPaneljavax.swing.JPanel.AccessibleJPanel
 - 
Nested classes/interfaces inherited from class javax.swing.JComponentjavax.swing.JComponent.AccessibleJComponent
 
- 
 - 
Field SummaryFields Modifier and Type Field Description (package private) ConnectionConfigccCurrent(package private) ConnectionConfig[]classConnectionList(package private) java.lang.String[]classConnectionNameList(package private) javax.swing.JPaneldetailsjavax.swing.JComboBox<java.lang.String>manuBox(package private) java.lang.String[]manufactureNameList(package private) javax.swing.JComboBox<java.lang.String>modeBoxstatic java.lang.StringNO_PORTS_FOUNDstatic java.lang.StringNONEstatic java.lang.StringNONE_SELECTED(package private) UserPreferencesManagerp- 
Fields inherited from class javax.swing.JComponentlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
- 
 - 
Constructor SummaryConstructors Modifier Constructor Description protectedJmrixConfigPane()protectedJmrixConfigPane(ConnectionConfig original)Use "instance" to get one of these.
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static JmrixConfigPanecreateNewPanel()Get access to a new pane for creating new connections.static JmrixConfigPanecreatePanel(int index)Create a new connection configuration panel.static JmrixConfigPanecreatePanel(ConnectionConfig c)Create a new configuration panel for the given connection.static voiddispose(JmrixConfigPane confPane)Disposes of the underlying connection for a configuration pane.java.lang.StringgetConnectionName()java.lang.StringgetCurrentManufacturerName()ConnectionConfiggetCurrentObject()java.lang.StringgetCurrentProtocolInfo()java.lang.StringgetCurrentProtocolName()booleangetDisabled()java.lang.StringgetLabelKey()Text displayed above the preferences panel This label is only displayed if the preferences panel is in a tabbed set of preferences.javax.swing.JComponentgetPreferencesComponent()Get the preferences component for displayjava.lang.StringgetPreferencesItem()Get the Preferences Item identifier.java.lang.StringgetPreferencesItemText()Get the text for the Preferences Item in the preferences window list of preferences categories.java.lang.StringgetPreferencesTooltip()The tooltip to display for a tabbed preferences paneljava.lang.StringgetTabbedPreferencesTitle()Get the title for the tab containing this preferences item.booleanisDirty()Indicate that preferences need to be saved.booleanisPersistant()Indicates that this PrefernecesPanel should be stored across application starts by the PreferencesManager This should be true if the implementing class relies on theConfigureManagerstores and retrieves the preferences managed by the implementing class on behalf of the implementing class.booleanisPreferencesValid()Indicate that the preferences are valid.booleanisRestartRequired()Indicate that the preferences will not take effect until restarted.voidsavePreferences()Save any changes to preferences.(package private) voidselection()voidsetDisabled(boolean disabled)voidupdateComboConnection()- 
Methods inherited from class javax.swing.JPanelgetAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 - 
Methods inherited from class javax.swing.JComponentaddAncestorListener, 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.Containeradd, 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.Componentaction, 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.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 - 
Methods inherited from interface jmri.swing.PreferencesPanelgetIsEnabled, getSortOrder
 
- 
 
- 
- 
- 
Field Detail- 
NONE_SELECTEDpublic static final java.lang.String NONE_SELECTED 
 - 
NO_PORTS_FOUNDpublic static final java.lang.String NO_PORTS_FOUND 
 - 
NONEpublic static final java.lang.String NONE 
 - 
modeBoxjavax.swing.JComboBox<java.lang.String> modeBox 
 - 
manuBoxpublic javax.swing.JComboBox<java.lang.String> manuBox 
 - 
detailsjavax.swing.JPanel details 
 - 
classConnectionNameListjava.lang.String[] classConnectionNameList 
 - 
classConnectionListConnectionConfig[] classConnectionList 
 - 
manufactureNameListjava.lang.String[] manufactureNameList 
 - 
ccCurrentConnectionConfig ccCurrent 
 
- 
 - 
Constructor Detail- 
JmrixConfigPaneprotected JmrixConfigPane() 
 - 
JmrixConfigPaneprotected JmrixConfigPane(ConnectionConfig original) Use "instance" to get one of these. That allows it to reconnect to existing information in an existing ConnectionConfig object. It's permitted to call this with a null argument, e.g. for when first configuring the system.- Parameters:
- original- Existing ConnectionConfig object to (re)connect with
 
 
- 
 - 
Method Detail- 
createPanelpublic static JmrixConfigPane createPanel(int index) Create a new connection configuration panel.- Parameters:
- index- the index of the desired connection configuration from- ConnectionConfigManager.getConnections(int)
- Returns:
- the panel for the requested connection or for a new connection if index did not match an existing connection configuration
 
 - 
createPanelpublic static JmrixConfigPane createPanel(ConnectionConfig c) Create a new configuration panel for the given connection.- Parameters:
- c- the connection; if null, the panel is ready for a new connection
- Returns:
- the new panel
 
 - 
createNewPanelpublic static JmrixConfigPane createNewPanel() Get access to a new pane for creating new connections.- Returns:
- a new configuration panel
 
 - 
disposepublic static void dispose(JmrixConfigPane confPane) Disposes of the underlying connection for a configuration pane.- Parameters:
- confPane- the pane to dispose of
 
 - 
updateComboConnectionpublic void updateComboConnection() 
 - 
selectionvoid selection() 
 - 
getConnectionNamepublic java.lang.String getConnectionName() 
 - 
getCurrentManufacturerNamepublic java.lang.String getCurrentManufacturerName() 
 - 
getCurrentProtocolNamepublic java.lang.String getCurrentProtocolName() 
 - 
getCurrentProtocolInfopublic java.lang.String getCurrentProtocolInfo() 
 - 
getCurrentObjectpublic ConnectionConfig getCurrentObject() 
 - 
getDisabledpublic boolean getDisabled() 
 - 
setDisabledpublic void setDisabled(boolean disabled) 
 - 
getPreferencesItempublic java.lang.String getPreferencesItem() Description copied from interface:PreferencesPanelGet the Preferences Item identifier. Multiple PreferencePanels can be displayed as tabs in a single item. Preferences items are listed in the menu on the left of the preferences window.- Specified by:
- getPreferencesItemin interface- PreferencesPanel
- Returns:
- the preferences item identifier.
 
 - 
getPreferencesItemTextpublic java.lang.String getPreferencesItemText() Description copied from interface:PreferencesPanelGet the text for the Preferences Item in the preferences window list of preferences categories. Multiple PreferencePanels can be displayed as tabs in a single item. Preferences items are listed in the menu on the left of the preferences window.- Specified by:
- getPreferencesItemTextin interface- PreferencesPanel
- Returns:
- the text for the preferences item.
 
 - 
getTabbedPreferencesTitlepublic java.lang.String getTabbedPreferencesTitle() Description copied from interface:PreferencesPanelGet the title for the tab containing this preferences item.- Specified by:
- getTabbedPreferencesTitlein interface- PreferencesPanel
- Returns:
- a tab title
 
 - 
getLabelKeypublic java.lang.String getLabelKey() Description copied from interface:PreferencesPanelText displayed above the preferences panel This label is only displayed if the preferences panel is in a tabbed set of preferences. This label can contain multiple lines.- Specified by:
- getLabelKeyin interface- PreferencesPanel
- Returns:
- label text
 
 - 
getPreferencesComponentpublic javax.swing.JComponent getPreferencesComponent() Description copied from interface:PreferencesPanelGet the preferences component for display- Specified by:
- getPreferencesComponentin interface- PreferencesPanel
- Returns:
- the preferences panel
 
 - 
isPersistantpublic boolean isPersistant() Description copied from interface:PreferencesPanelIndicates that this PrefernecesPanel should be stored across application starts by the PreferencesManager This should be true if the implementing class relies on theConfigureManagerstores and retrieves the preferences managed by the implementing class on behalf of the implementing class.- Specified by:
- isPersistantin interface- PreferencesPanel
- Returns:
- false if the implementing class stores its own preferences
 
 - 
getPreferencesTooltippublic java.lang.String getPreferencesTooltip() Description copied from interface:PreferencesPanelThe tooltip to display for a tabbed preferences panel- Specified by:
- getPreferencesTooltipin interface- PreferencesPanel
- Returns:
- tooltip text
 
 - 
savePreferencespublic void savePreferences() Description copied from interface:PreferencesPanelSave any changes to preferences. This method is called for every instance of a PreferencesPanel that is loaded byTabbedPreferencesifPreferencesPanel.isPersistant()is false.- Specified by:
- savePreferencesin interface- PreferencesPanel
 
 - 
isDirtypublic boolean isDirty() Description copied from interface:PreferencesPanelIndicate that preferences need to be saved.- Specified by:
- isDirtyin interface- PreferencesPanel
- Returns:
- true if preferences need to be saved, false otherwise
 
 - 
isRestartRequiredpublic boolean isRestartRequired() Description copied from interface:PreferencesPanelIndicate that the preferences will not take effect until restarted.- Specified by:
- isRestartRequiredin interface- PreferencesPanel
- Returns:
- true if the application needs to restart
 
 - 
isPreferencesValidpublic boolean isPreferencesValid() Description copied from interface:PreferencesPanelIndicate that the preferences are valid.- Specified by:
- isPreferencesValidin interface- PreferencesPanel
- Returns:
- true if the preferences are valid, false otherwise
 
 
- 
 
-