ucar.unidata.ui
Class MapWidget

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by ucar.unidata.ui.PanelWithFrame
                      extended by ucar.unidata.ui.MapWidget
All Implemented Interfaces:
ActionListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible

public class MapWidget
extends PanelWithFrame
implements ActionListener

Widget for configuring maps. Maintains a CompositeDisplayable of MapLines and LatLonLines. The user can configure the visibility and color of a particular set of map or lat/lon lines. The increments between lat/lon lines can be configured as well. The widget is configured through a properties file. When the properties of the widget are set and the "Apply" button is selected, a PropertyChangeEvent is thrown with the CompositeDisplayable of all visible maps as the newValue.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
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
static String ATTR_COLOR
          Xml attribute for the color property
static String ATTR_DESCRIPTION
          Xml attribute for the map description property
static String ATTR_LINESTYLE
          Xml attribute for the linestyle property
static String ATTR_LINEWIDTH
          Xml attribute for the linewidth property
static String ATTR_MAXVALUE
          Xml attribute for the max value property
static String ATTR_MINVALUE
          Xml attribute for the min value property
static String ATTR_POSITION
          Xml attribute for the map vertical position property
static String ATTR_SOURCE
          Xml attribute for the map source property
static String ATTR_SPACING
          Xml attribute for the spacing property
static String ATTR_VALID
          Xml attribute for the property
static String ATTR_VISIBLE
          Xml attribute for the valid property - used to ignore certain map entries
static String DEFAULT_MAPFILE
          Where to look for maps
static String MAP_COMPOSITE
          The property we fire when something changes
static String TAG_LATITUDE
          Xml tag for the latitude entry
static String TAG_LONGITUDE
          Xml tag for the longitude entry
static String TAG_MAP
          Xml tag for the map entry
static String TAG_MAPS
          Xml tag for the maps entry
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
MapWidget(XmlResourceCollection mapResources, boolean standAlone)
          Construct the widget using the specified set of default and users xml
 
Method Summary
 void actionPerformed(ActionEvent event)
          Handle OK, Apply, Reset and Cancel buttom commands
 CompositeDisplayable createMaps()
          Get the map composite which is all the maps that are set to be visible.
 void doOk()
          Apply the gui properties to the internal state.
 String getCurrentState()
          Return the current state (as an XML string) of this MapWidget.
 LatLonData getLatData()
          Return the latitude state
 LatLonData getLonData()
          The Longitude state
 List getMapData()
          Return the list of MapData objects
 double getMapPosition()
          Get the vertical map position value
 void setCurrentState(String xml)
          Recreate the users xml from the given parameter and loadDefaults
 
Methods inherited from class ucar.unidata.ui.PanelWithFrame
addContentsToFrame, addWindowListenerToFrame, closeFrame, destroyFrame, getFrame, haveFrame, isFrameShowing, makeFrame, packFrame, showFrame
 
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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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.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, 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, getFocusCycleRootAncestor, 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, hide, 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, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

MAP_COMPOSITE

public static final String MAP_COMPOSITE
The property we fire when something changes

See Also:
Constant Field Values

DEFAULT_MAPFILE

public static final String DEFAULT_MAPFILE
Where to look for maps

See Also:
Constant Field Values

TAG_LATITUDE

public static final String TAG_LATITUDE
Xml tag for the latitude entry

See Also:
Constant Field Values

TAG_LONGITUDE

public static final String TAG_LONGITUDE
Xml tag for the longitude entry

See Also:
Constant Field Values

TAG_MAPS

public static final String TAG_MAPS
Xml tag for the maps entry

See Also:
Constant Field Values

TAG_MAP

public static final String TAG_MAP
Xml tag for the map entry

See Also:
Constant Field Values

ATTR_COLOR

public static final String ATTR_COLOR
Xml attribute for the color property

See Also:
Constant Field Values

ATTR_DESCRIPTION

public static final String ATTR_DESCRIPTION
Xml attribute for the map description property

See Also:
Constant Field Values

ATTR_LINEWIDTH

public static final String ATTR_LINEWIDTH
Xml attribute for the linewidth property

See Also:
Constant Field Values

ATTR_LINESTYLE

public static final String ATTR_LINESTYLE
Xml attribute for the linestyle property

See Also:
Constant Field Values

ATTR_MINVALUE

public static final String ATTR_MINVALUE
Xml attribute for the min value property

See Also:
Constant Field Values

ATTR_MAXVALUE

public static final String ATTR_MAXVALUE
Xml attribute for the max value property

See Also:
Constant Field Values

ATTR_POSITION

public static final String ATTR_POSITION
Xml attribute for the map vertical position property

See Also:
Constant Field Values

ATTR_SOURCE

public static final String ATTR_SOURCE
Xml attribute for the map source property

See Also:
Constant Field Values

ATTR_SPACING

public static final String ATTR_SPACING
Xml attribute for the spacing property

See Also:
Constant Field Values

ATTR_VALID

public static final String ATTR_VALID
Xml attribute for the property

See Also:
Constant Field Values

ATTR_VISIBLE

public static final String ATTR_VISIBLE
Xml attribute for the valid property - used to ignore certain map entries

See Also:
Constant Field Values
Constructor Detail

MapWidget

public MapWidget(XmlResourceCollection mapResources,
                 boolean standAlone)
Construct the widget using the specified set of default and users xml

Parameters:
mapResources - Where the maps.xml are
standAlone - Is this embedded in another window
Method Detail

setCurrentState

public void setCurrentState(String xml)
Recreate the users xml from the given parameter and loadDefaults

Parameters:
xml - The string/xml representation of the map state

getCurrentState

public String getCurrentState()
Return the current state (as an XML string) of this MapWidget.

Returns:
The xml representation of the current state

doOk

public void doOk()
Apply the gui properties to the internal state. Remake the xml.


actionPerformed

public void actionPerformed(ActionEvent event)
Handle OK, Apply, Reset and Cancel buttom commands

Specified by:
actionPerformed in interface ActionListener
Parameters:
event - The action event

getMapPosition

public double getMapPosition()
Get the vertical map position value

Returns:
map position value

createMaps

public CompositeDisplayable createMaps()
                                throws VisADException,
                                       RemoteException
Get the map composite which is all the maps that are set to be visible.

Returns:
map composite
Throws:
RemoteException
VisADException

getMapData

public List getMapData()
Return the list of MapData objects

Returns:
List of map data

getLatData

public LatLonData getLatData()
Return the latitude state

Returns:
The Lat. state

getLonData

public LatLonData getLonData()
The Longitude state

Returns:
The lon state