public class XmlChooser extends IdvChooser implements java.awt.event.ActionListener
XmlHandler
based on the type of xml. Currently this class handles two
types of xml: Thredds catalog and Web Map Server (WMS)
capability documents. The XmlHandler does most of the work.
This class maintains the different xml docs the user has gone to coupled with the XmlHandler for each doc. It uses this list to support navigating back and forth through the history of documents.
Modifier and Type | Class and Description |
---|---|
static class |
XmlChooser.PropertiedAction
A holder of a String action and a properties table.
|
javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ATTR_URL
The xml attr name for any initial url from the
choosers.xml segment that created this chooser
|
static java.lang.String |
PROP_CHOOSER_URL
_more_
|
static java.lang.String |
TAG_ERROR
If there was some error in loading the xml
we construct and xml document with the error tag
and popup the message in the GUI
|
protected int |
timestamp
Keeps track of the outstanding url request
|
ATTR_ID, ATTR_SHOWDETAILS, dirHistoryCbx, ignoreDirHistory, NULL_PROPERTIES, NULL_STRING, PREF_ADDESERVERS, PREF_CATALOGLIST, PREF_DEFAULTDIR, PREF_IMAGEDESCLIST, PREF_POLLINGINFO, PREF_RADARDESCLIST, PREF_TDSPOINTOBSERVER, PREF_TDSRADARSERVER, PROP_CHOOSER_MAPS, PROP_CHOOSER_PROJECTION_BOUNDS, PROP_CHOOSERCLASSNAME, PROP_STATUS_BACKGROUND, PROP_STATUS_FOREGROUND, PROP_STATUS_TEMPLATE, stationMap
cancelButton, CMD_LOAD, contents, GRID_INSETS, GRID_SPACING, GRID_SPACING_H, GRID_SPACING_V, haveData, helpPath, loadButton, MAP_COLOR, simpleMode, statusLabel
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ARG_B64BUNDLE, ARG_B64ISL, ARG_BUNDLE, ARG_CATALOG, ARG_CHOOSER, ARG_CLEARDEFAULT, ARG_CODE, ARG_CONNECT, ARG_CURRENTTIME, ARG_DATA, ARG_DEBUG, ARG_DEFAULT, ARG_DISPLAY, ARG_DXML, ARG_FIXEDTIME, ARG_HELP, ARG_IMAGE, ARG_IMAGESERVER, ARG_INSTALLPLUGIN, ARG_ISLFILE, ARG_ISLINTERACTIVE, ARG_LISTRESOURCES, ARG_MAINCLASS, ARG_MOVIE, ARG_MSG_DEBUG, ARG_MSG_RECORD, ARG_NODEFAULT, ARG_NOERRORSINGUI, ARG_NOGUI, ARG_NOONEINSTANCE, ARG_NOPLUGINS, ARG_NOPREF, ARG_ONEINSTANCEPORT, ARG_PLUGIN, ARG_PORT, ARG_PRINTJNLP, ARG_PROPERTIES, ARG_SCRIPT, ARG_SERVER, ARG_SETFILES, ARG_SITEPATH, ARG_TEMPLATE, ARG_TEST, ARG_TESTEVAL, ARG_TRACE, ARG_TRACEONLY, ARG_USERPATH, DEFAULT_DATE_FORMAT, DEFAULT_DOCPATH, DEFAULT_TIMEZONE, FILTER_CPT, FILTER_ISL, FILTER_JNLP, FILTER_XIDV, FILTER_XIDVZIDV, FILTER_XML, FILTER_ZIDV, ID_COMMANDSTORUN, ID_DATASOURCES, ID_DISPLAYCONTROLS, ID_IDV, ID_JYTHON, ID_MESSAGE, ID_MISCHASHTABLE, ID_NCIDV_VERSION, ID_VERSION, ID_VIEWMANAGERS, ID_WINDOWS, INITIAL_PROBE_EARTHLOCATION, NULL_DATA_SELECTION, PREF_APPEARANCEMODE, PREF_ARCHIVEDIR, PREF_ARCHIVENAME, PREF_AUTODISPLAYS_ENABLE, PREF_AUTODISPLAYS_SHOWGUI, PREF_AUTOSELECTDATA, PREF_CACHESIZE, PREF_CONTROLSINTABS, PREF_DATAPREFIX, PREF_DATE_FORMAT, PREF_DISTANCEUNIT, PREF_DOCACHE, PREF_EMBEDDATACHOOSERINDASHBOARD, PREF_EMBEDFIELDSELECTORINDASHBOARD, PREF_EMBEDLEGENDINDASHBOARD, PREF_EMBEDQUICKLINKSINDASHBOARD, PREF_EVENT_KEYBOARDMAP, PREF_EVENT_MOUSEMAP, PREF_EVENT_WHEELMAP, PREF_FAST_RENDER, PREF_FIELD_CACHETHRESHOLD, PREF_FILEREADDIR, PREF_FILEWRITEDIR, PREF_GEOMETRY_BY_REF, PREF_HISTORY, PREF_IMAGE_BY_REF, PREF_LARGE_REMOTE_DATA_WARN, PREF_LASTVERSION, PREF_LATLON_FORMAT, PREF_LEGEND_SHOWICONS, PREF_LOCALE, PREF_LOOKANDFEEL, PREF_MAXIMAGESIZE, PREF_MEMORY, PREF_NPOT_IMAGE, PREF_OPEN_ASK, PREF_OPEN_MERGE, PREF_OPEN_REMOVE, PREF_PROJ_LIST, PREF_SAMPLINGMODE, PREF_SHOWCONTROLWINDOW, PREF_SHOWDASHBOARD, PREF_SHOWDECODEDIALOG, PREF_SHOWHIDDENFILES, PREF_SHOWQUITCONFIRM, PREF_SITEPATH, PREF_THREADS_DATA, PREF_THREADS_RENDER, PREF_TIMEZONE, PREF_VERTICALCS, PREF_VERTICALUNIT, PREF_WINDOW_SHOWTOOLBAR, PREF_ZIDV_ASK, PREF_ZIDV_DIRECTORY, PREF_ZIDV_SAVETOTMP, PROP_3DMODE, PROP_ABOUTTEXT, PROP_APPRESOURCEPATH, PROP_CHOOSERS, PROP_CHOOSERS_ALL, PROP_CONTROLDESCRIPTORS, PROP_CONTROLDESCRIPTORS_ALL, PROP_DATAHOLDERBOUNDS, PROP_DEFAULTLOCATIONS, PROP_DISPLAYLIST_GROUP, PROP_FIXFILELOCKUP, PROP_JNLPCODEBASE, PROP_JNLPTEMPLATE, PROP_JNLPTITLE, PROP_LOADINGXML, PROP_MAP_GLOBE_LEVEL, PROP_MAP_MAP_LEVEL, PROP_MINIMUMFRAMECYCLETIME, PROP_MONITORPORT, PROP_OLDCONTROLDESCRIPTORS, PROP_ONEINSTANCEPORT, PROP_PREFERENCES, PROP_PROJ_NAME, PROP_RESOURCEFILES, PROP_SHOWCLOCK_DASH, PROP_SHOWCLOCK_VIEW, PROP_SHOWDASHBOARD, PROP_SHOWDATATREE, PROP_SHOWFORMULAS, PROP_SHOWSPLASH, PROP_SPLASHICON, PROP_UI_DESKTOP, PROP_USE_DISPLAYAREA, PROP_USE_TIMEDRIVER, PROP_VERSIONFILE, PROP_WINDOW_SCREENSIZEOFFSET, PROP_WINDOW_SIZEHEIGHT, PROP_WINDOW_SIZEWIDTH, PROP_WINDOW_USESCREENSIZE, SUFFIX_BAT, SUFFIX_CPT, SUFFIX_ISL, SUFFIX_JNLP, SUFFIX_RBI, SUFFIX_SH, SUFFIX_XIDV, SUFFIX_XML, SUFFIX_ZIDV
Constructor and Description |
---|
XmlChooser(IdvChooserManager mgr,
org.w3c.dom.Element root)
Create the
XmlChooser |
Modifier and Type | Method and Description |
---|---|
void |
actionPerformed(java.awt.event.ActionEvent ae)
Handle any Gui actions.
|
void |
doLoadInThread()
Load the currently selected xml element.
|
protected javax.swing.JComponent |
doMakeContents()
Create and return the Gui contents.
|
void |
doUpdate()
Reload the current xml and update the display.
|
void |
doUpdateInner()
Reload the current xml and update the display.
|
org.w3c.dom.Document |
getDocument()
Get the xml doc
|
java.lang.String |
getXml()
Get the xml
|
void |
goBack()
Go back and display the previous document.
|
void |
goForward()
Go forward and display the next document in the history list.
|
protected void |
handleAction(java.lang.String action)
A wrapper around @see{handleAction}, passing in an empty properties table.
|
protected void |
handleAction(java.lang.String action,
java.util.Hashtable properties)
Process the given action (e.g., url, idv command) with the given properties.
|
protected void |
handleActions(java.util.List actions)
Process the given list of
XmlChooser.PropertiedAction s. |
protected void |
handleActionsInThread(java.util.List actions)
Actually does the work of handling the actions
|
void |
initSubProperties(java.util.Hashtable properties)
_more_
|
protected boolean |
makeDataSource(java.lang.Object definingObject,
java.lang.String dataType,
java.util.Hashtable properties)
_more_
|
protected void |
makeUi(org.w3c.dom.Document doc,
org.w3c.dom.Element xmlRoot,
java.lang.String path)
Generate a user interface from the given xml document (derived from the given path).
|
boolean |
makeUiFromPath(java.lang.String xmlPath)
Load the xml defined by the given xmlPath.
|
boolean |
makeUiFromPath(java.lang.String xmlPath,
int myTimestamp)
Load the xml defined by the given xmlPath.
|
void |
setDataSource(DataSource dataSource)
_more_
|
void |
setHaveData(boolean have)
_more_
|
protected boolean |
shouldDoUpdateOnFirstDisplay()
Overwrite base class method to do the update on first display.
|
protected void |
updateStatus()
_more_
|
clearSelectedStations, clearStations, closeChooser, createStationMap, decorateButtons, doCancel, doClose, errorMessage, getAttribute, getContents, getDataManager, getDataSource, getDataSourceId, getDataSourceId, getDataSourceProperties, getDataSourcesComponent, getDataSourcesComponent, getDataSourcesComponent, getDataSourcesComponent, getDefaultButtons, getDefaultDisplayType, getDefaultMap, getDefaultMaps, getDefaultProjection, getDefaultProjectionRect, getHaveStations, getId, getIdv, getMenuTitle, getPreferenceList, getPreferenceList, getPreferenceList, getPreferenceList, getProperty, getProperty, getPropList, getSelectedStation, getSelectedStations, getShowInMenu, getStationMap, getStatusLabel, getStatusLabelBackground, getStatusLabelForeground, getTitle, getXmlNode, haveStationSelected, init, initChooserPanel, initStationMap, isReloadable, logException, makeDataSource, makeTimeMenus, newSelectedStations, resetDataSourceId, setDataSourceListener, showNormalCursor, showWaitCursor, startTask, stopTask, stopTaskAndIsOk, taskOk, userMessage, usingStations
addPropertyChangeListener, canDoUpdate, clearWaitCursor, doHelp, doLoad, firePropertyChange, getButtonLabels, getDefaultButtons, getHaveData, getLoadCommandName, getLoadToolTip, getMessageTemplate, getSimpleMode, getStatusComponent, getUpdateToolTip, padLabel, registerStatusComp, revalidate, setHelpPath, setMessageTemplate, setStatus, setStatus, showNormalCursor, showWaitCursor
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
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, 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
add, add, add, add, add, addContainerListener, addImpl, 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
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, 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, 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, transferFocusBackward, transferFocusUpCycle
public static final java.lang.String PROP_CHOOSER_URL
public static final java.lang.String TAG_ERROR
public static final java.lang.String ATTR_URL
protected int timestamp
public XmlChooser(IdvChooserManager mgr, org.w3c.dom.Element root)
XmlChooser
mgr
- The IdvChooserManager
root
- The xml root that defines this chooserpublic void setDataSource(DataSource dataSource)
setDataSource
in class IdvChooser
dataSource
- _more_protected void updateStatus()
updateStatus
in class IdvChooser
public void setHaveData(boolean have)
setHaveData
in class ChooserPanel
have
- _more_protected boolean shouldDoUpdateOnFirstDisplay()
shouldDoUpdateOnFirstDisplay
in class IdvChooser
public void actionPerformed(java.awt.event.ActionEvent ae)
actionPerformed
in interface java.awt.event.ActionListener
actionPerformed
in class ChooserPanel
ae
- The ActionEvent
.public void initSubProperties(java.util.Hashtable properties)
properties
- _more_protected boolean makeDataSource(java.lang.Object definingObject, java.lang.String dataType, java.util.Hashtable properties)
makeDataSource
in class IdvChooser
definingObject
- _more_dataType
- _more_properties
- _more_protected javax.swing.JComponent doMakeContents()
doMakeContents
in class ChooserPanel
public boolean makeUiFromPath(java.lang.String xmlPath)
xmlPath
- The url pointing to the xml to display.public boolean makeUiFromPath(java.lang.String xmlPath, int myTimestamp)
xmlPath
- The url pointing to the xml to display.myTimestamp
- Keeps track of which request this is.protected void makeUi(org.w3c.dom.Document doc, org.w3c.dom.Element xmlRoot, java.lang.String path)
doc
- the xml documentxmlRoot
- The root of the xml document to create a display for.path
- The url path we got the xml from.public void goBack()
public void goForward()
protected void handleAction(java.lang.String action)
action
- The String action (Url, Idv command, etc.) to handle.protected void handleAction(java.lang.String action, java.util.Hashtable properties)
action
- The String action (Url, Idv command, etc.) to handle.properties
- The properties for this action.protected void handleActions(java.util.List actions)
XmlChooser.PropertiedAction
s.actions
- The list of actions to processprotected void handleActionsInThread(java.util.List actions)
actions
- List of PropertiedAction
spublic void doUpdate()
doUpdate
in class ChooserPanel
public void doUpdateInner()
public void doLoadInThread()
doLoadInThread
in class ChooserPanel
public java.lang.String getXml()
public org.w3c.dom.Document getDocument()