jmri.jmrit.throttle
Class AddressPanel

Show UML class diagram
java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JInternalFrame
                  extended by jmri.jmrit.throttle.AddressPanel
All Implemented Interfaces:
ImageObserver, MenuContainer, PropertyChangeListener, Serializable, EventListener, Accessible, RootPaneContainer, WindowConstants, ThrottleListener

public class AddressPanel
extends JInternalFrame
implements ThrottleListener, PropertyChangeListener

A JInternalFrame 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.

See Also:
Serialized Form

Nested Class Summary
(package private) static class AddressPanel.NullComboBoxConsist
           
 
Nested classes/interfaces inherited from class javax.swing.JInternalFrame
JInternalFrame.AccessibleJInternalFrame, JInternalFrame.JDesktopIcon
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
(package private) static org.slf4j.Logger log
           
 
Fields inherited from class javax.swing.JInternalFrame
closable, CONTENT_PANE_PROPERTY, desktopIcon, FRAME_ICON_PROPERTY, frameIcon, GLASS_PANE_PROPERTY, iconable, IS_CLOSED_PROPERTY, IS_ICON_PROPERTY, IS_MAXIMUM_PROPERTY, IS_SELECTED_PROPERTY, isClosed, isIcon, isMaximum, isSelected, LAYERED_PANE_PROPERTY, maximizable, MENU_BAR_PROPERTY, resizable, ROOT_PANE_PROPERTY, rootPane, rootPaneCheckingEnabled, title, TITLE_PROPERTY
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AddressPanel()
          Constructor
 
Method Summary
 void addAddressListener(AddressListener l)
          Add an AddressListener.
 void destroy()
           
 void dispatchAddress()
          Dispatch the current address for use by other throttles
 DccLocoAddress getConsistAddress()
           
 DccLocoAddress getCurrentAddress()
           
 RosterEntry getRosterEntry()
          Get the RosterEntry if there's one for this throttle.
 RosterEntrySelectorPanel getRosterEntrySelector()
           
 int getRosterSelectedIndex()
          Gets the selected index of the roster combo box.
 DccThrottle getThrottle()
           
 org.jdom.Element getXml()
          Create an Element of this object's preferences.
 void notifyConsistThrottleFound(DccThrottle t)
          Get notification that a consist throttle has been found as we requested.
 void notifyFailedThrottleRequest(DccLocoAddress address, String reason)
          Get notification that an attempt to request a throttle has failed
 void notifyThrottleDisposed()
          Receive notification that an address has been release or dispatched.
 void notifyThrottleFound(DccThrottle t)
          Get notification that a throttle has been found as we requested.
protected  void openProgrammer()
          Open a programmer for this address
 void propertyChange(PropertyChangeEvent evt)
           
 void releaseAddress()
          Release the current address.
 void removeAddressListener(AddressListener l)
          Remove an AddressListener.
 void selectRosterEntry()
          "Sets" the current roster entry.
 void setAddress(int consistNumber, boolean b)
           
 void setBackgroundPanel(BackgroundPanel bp)
           
 void setConsistAddress(DccLocoAddress consistAddress)
           
 void setCurrentAddress(DccLocoAddress currentAddress)
           
 void setRosterEntry(RosterEntry entry)
          Set the RosterEntry for this throttle.
 void setRosterSelectedIndex(int index)
          Sets the selected index of the roster combo box.
 void setXml(org.jdom.Element e)
          Use the Element passed to initialize based on user prefs.
 
Methods inherited from class javax.swing.JInternalFrame
addImpl, addInternalFrameListener, createRootPane, dispose, doDefaultCloseAction, fireInternalFrameEvent, getAccessibleContext, getContentPane, getDefaultCloseOperation, getDesktopIcon, getDesktopPane, getFocusCycleRootAncestor, getFocusOwner, getFrameIcon, getGlassPane, getInternalFrameListeners, getJMenuBar, getLastCursor, getLayer, getLayeredPane, getMenuBar, getMostRecentFocusOwner, getNormalBounds, getRootPane, getTitle, getUI, getUIClassID, getWarningString, hide, isClosable, isClosed, isFocusCycleRoot, isIcon, isIconifiable, isMaximizable, isMaximum, isResizable, isRootPaneCheckingEnabled, isSelected, moveToBack, moveToFront, pack, paintComponent, paramString, remove, removeInternalFrameListener, reshape, restoreSubcomponentFocus, setClosable, setClosed, setContentPane, setCursor, setDefaultCloseOperation, setDesktopIcon, setFocusCycleRoot, setFrameIcon, setGlassPane, setIcon, setIconifiable, setJMenuBar, setLayer, setLayer, setLayeredPane, setLayout, setMaximizable, setMaximum, setMenuBar, setNormalBounds, setResizable, setRootPane, setRootPaneCheckingEnabled, setSelected, setTitle, setUI, show, toBack, toFront, 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, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, 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, 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.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusBackward, 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, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

log

static org.slf4j.Logger log
Constructor Detail

AddressPanel

public AddressPanel()
Constructor

Method Detail

destroy

public void destroy()

addAddressListener

public void addAddressListener(AddressListener l)
Add an AddressListener. AddressListeners are notified when the user selects a new address and when a Throttle is acquired for that address

Parameters:
l -

removeAddressListener

public void removeAddressListener(AddressListener l)
Remove an AddressListener.

Parameters:
l -

getRosterSelectedIndex

public int getRosterSelectedIndex()
Gets the selected index of the roster combo box. Implemented to support xboxThrottle.py

Returns:
the selected index of the roster combo box

setRosterSelectedIndex

public void setRosterSelectedIndex(int index)
Sets the selected index of the roster combo box. Implemented to support xboxThrottle.py This method temporarily disables roster box actions so it can change the selected index without triggering a cascade of events.

Parameters:
index - the index to select in the combo box

setBackgroundPanel

public void setBackgroundPanel(BackgroundPanel bp)

selectRosterEntry

public void selectRosterEntry()
"Sets" the current roster entry. Equivalent to the user pressing the "Set" button. Implemented to support xboxThrottle.py


notifyThrottleFound

public void notifyThrottleFound(DccThrottle t)
Get notification that a throttle has been found as we requested.

Specified by:
notifyThrottleFound in interface ThrottleListener
Parameters:
t - An instantiation of the DccThrottle with the address requested.

notifyFailedThrottleRequest

public void notifyFailedThrottleRequest(DccLocoAddress address,
                                        String reason)
Description copied from interface: ThrottleListener
Get notification that an attempt to request a throttle has failed

Specified by:
notifyFailedThrottleRequest in interface ThrottleListener
Parameters:
address - DccLocoAddress of the failed loco request.
reason - The reason why the throttle request failed.

notifyConsistThrottleFound

public void notifyConsistThrottleFound(DccThrottle t)
Get notification that a consist throttle has been found as we requested.

Parameters:
t - An instantiation of the DccThrottle with the address requested.

notifyThrottleDisposed

public void notifyThrottleDisposed()
Receive notification that an address has been release or dispatched.


getRosterEntry

public RosterEntry getRosterEntry()
Get the RosterEntry if there's one for this throttle.

Returns:
RosterEntry or null

setRosterEntry

public void setRosterEntry(RosterEntry entry)
Set the RosterEntry for this throttle.


openProgrammer

protected void openProgrammer()
Open a programmer for this address


dispatchAddress

public void dispatchAddress()
Dispatch the current address for use by other throttles


releaseAddress

public void releaseAddress()
Release the current address.


getXml

public org.jdom.Element getXml()
Create an Element of this object's preferences.

Returns:
org.jdom.Element for this objects preferences. Defined in DTD/throttle-config

setXml

public void setXml(org.jdom.Element e)
Use the Element passed to initialize based on user prefs.

Parameters:
e - The Element containing prefs as defined in DTD/throttle-config

getRosterEntrySelector

public RosterEntrySelectorPanel getRosterEntrySelector()
Returns:
the RosterEntrySelectorPanel

getThrottle

public DccThrottle getThrottle()

getCurrentAddress

public DccLocoAddress getCurrentAddress()

setCurrentAddress

public void setCurrentAddress(DccLocoAddress currentAddress)

setAddress

public void setAddress(int consistNumber,
                       boolean b)

getConsistAddress

public DccLocoAddress getConsistAddress()

setConsistAddress

public void setConsistAddress(DccLocoAddress consistAddress)

propertyChange

public void propertyChange(PropertyChangeEvent evt)
Specified by:
propertyChange in interface PropertyChangeListener


Copyright © 1997-2014 JMRI Community.
JMRI, DecoderPro, PanelPro, SoundPro, DispatcherPro and associated logos are our trademarks.

Additional information on copyright, trademarks and licenses is linked here.
Site hosted by: Get JMRI Model Railroad Interface at SourceForge.net. Fast, secure and Free Open Source software downloads