Package jmri.jmrit.throttle.panels
Class AddressPanel
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
jmri.jmrit.throttle.panels.AddressPanel
- All Implemented Interfaces:
ImageObserver,MenuContainer,PropertyChangeListener,Serializable,EventListener,Accessible,ThrottleListener
A JPanel that provides a way for the user to enter a decoder address.
This class also store AddressListeners and notifies them when the user enters
a new address.
This file is part of JMRI.
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:
-
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.FlipBufferStrategyNested classes/interfaces inherited from interface jmri.ThrottleListener
ThrottleListener.DecisionType -
Field Summary
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_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 TypeMethodDescriptionvoidAdd an AddressListener.voidDispatch the current address for use by other throttlesvoiddispose()Get the selected Consist if there's one for this throttle.Get the RosterEntry if there's one for this throttle.org.jdom2.ElementgetXml()Create an Element of this object's preferences.voidGet notification that a consist throttle has been found as we requested.voidnotifyDecisionRequired(LocoAddress address, ThrottleListener.DecisionType question) A decision is required for Throttle creation to continue.voidnotifyFailedThrottleRequest(LocoAddress address, String reason) Get notification that an attempt to request a throttle has failed.voidReceive notification that an address has been release or dispatched.voidGet notification that a throttle has been found as we requested.protected voidOpen a programmer for this addressvoidvoidRelease the current address.voidRemove an AddressListener.void"Sets" the current roster entry.voidsetAddress(int number, boolean isLong) set the currently used decoder address and initiate a throttle request (same as setCurrentAddress) if a consist address is already set, this address will be used only for functionsvoidsetConsistAddress(DccLocoAddress consistAddress) set the currently used consist address and initiate a throttle requestvoidsetCurrentAddress(DccLocoAddress currentAddress) set the currently used decoder address and initiate a throttle request if a consist address is already set, this address will be used only for functionsvoidsetRosterEntry(RosterEntry entry) Set the RosterEntry for this throttle and initiate a throttle requestvoidsetXml(org.jdom2.Element e) Use the Element passed to initialize based on user prefs.Methods 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
-
Constructor Details
-
AddressPanel
Constructor- Parameters:
throttleManager- the throttle manager
-
-
Method Details
-
dispose
-
addAddressListener
Add an AddressListener. AddressListeners are notified when the user selects a new address and when a Throttle is acquired for that address- Parameters:
l- listener to add.
-
removeAddressListener
Remove an AddressListener.- Parameters:
l- listener to remove.
-
selectRosterEntry
"Sets" the current roster entry. Equivalent to the user pressing the "Set" button. Implemented to support xboxThrottle.py -
notifyThrottleFound
Get notification that a throttle has been found as we requested.- Specified by:
notifyThrottleFoundin interfaceThrottleListener- Parameters:
t- An instantiation of the DccThrottle with the address requested.
-
notifyFailedThrottleRequest
Description copied from interface:ThrottleListenerGet notification that an attempt to request a throttle has failed.- Specified by:
notifyFailedThrottleRequestin interfaceThrottleListener- Parameters:
address- address of the failed requestreason- failure cause
-
notifyDecisionRequired
A decision is required for Throttle creation to continue.Steal / Cancel, Share / Cancel, or Steal / Share Cancel
- Specified by:
notifyDecisionRequiredin interfaceThrottleListener- Parameters:
address- The LocoAddress that needs the decision.question- The question being asked, steal / cancel, share / cancel, steal / share / cancel
-
notifyConsistThrottleFound
Get notification that a consist throttle has been found as we requested.- Parameters:
t- An instantiation of the DccThrottle with the address requested.
-
notifyThrottleDisposed
Receive notification that an address has been release or dispatched. -
getRosterEntry
Get the RosterEntry if there's one for this throttle.- Returns:
- RosterEntry or null
-
getConsistEntry
Get the selected Consist if there's one for this throttle.- Returns:
- Consist or null
-
setRosterEntry
Set the RosterEntry for this throttle and initiate a throttle request- Parameters:
entry- roster entry to set.
-
openProgrammer
Open a programmer for this address -
dispatchAddress
Dispatch the current address for use by other throttles -
releaseAddress
Release the current address. -
getXml
Create an Element of this object's preferences.- Window Preferences
- Address value
- Returns:
- org.jdom2.Element for this objects preferences. Defined in DTD/throttle-config
-
setXml
Use the Element passed to initialize based on user prefs.- Parameters:
e- The Element containing prefs as defined in DTD/throttle-config
-
getRosterEntrySelector
- Returns:
- the RosterEntrySelectorPanel
-
getThrottle
- Returns:
- the curently assigned motor throttle for regular locomotives or consist
-
getCurrentAddress
- Returns:
- the currently used decoder address
-
setCurrentAddress
set the currently used decoder address and initiate a throttle request if a consist address is already set, this address will be used only for functions- Parameters:
currentAddress- the address to use
-
setAddress
set the currently used decoder address and initiate a throttle request (same as setCurrentAddress) if a consist address is already set, this address will be used only for functions- Parameters:
number- the addressisLong- long/short (true/false) address
-
getConsistAddress
- Returns:
- the current consist address if any
-
setConsistAddress
set the currently used consist address and initiate a throttle request- Parameters:
consistAddress- the consist address to use
-
propertyChange
- Specified by:
propertyChangein interfacePropertyChangeListener
-