public class FileChooser extends ucar.unidata.idv.chooser.FileChooser implements Constants, javax.swing.event.AncestorListener
FileChooser is another "UI nicety" extension. The main
difference is that this class allows choosers.xml to specify a
boolean attribute, "selectdatasourceid". If disabled or not present,
a FileChooser will behave exactly like a standard
FileChooser.
If the attribute is present and enabled, the FileChooser's
data source type will automatically select the
DataSource corresponding to the chooser's
"datasourceid" attribute.
ucar.unidata.idv.chooser.FileChooser.MyFileChooserjavax.swing.JPanel.AccessibleJPaneljavax.swing.JComponent.AccessibleJComponent| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
ATTR_SELECT_DSID
Chooser attribute that controls selecting the default data source.
|
protected javax.swing.JPanel |
bottomPanel |
protected java.lang.Boolean |
buttonPressed
Boolean to tell if the load was initiated from the load button
(as opposed to typing in a filename... we need to capture that)
|
protected javax.swing.JPanel |
centerPanel |
private java.lang.String |
defaultDataSourceId
Default data source ID for this chooser.
|
private java.lang.String |
defaultDataSourceName
If there is a default data source ID, get the combo box display value
|
protected javax.swing.JFileChooser |
fileChooser
Get a handle on the actual file chooser.
|
protected ucar.unidata.idv.IntegratedDataViewer |
idv
Get a handle on the IDV.
|
private static org.slf4j.Logger |
logger
Logging object.
|
private boolean |
selectDefaultDataSource
Whether or not to select the data source corresponding to
defaultDataSourceId within the JComboBox returned by
getDataSourcesComponent(). |
private javax.swing.JComboBox |
sourceComboBox
Different subclasses can use the combobox of data source ids
|
private javax.swing.JLabel |
statusLabel |
protected javax.swing.JPanel |
topPanel
Panels that might need to be enabled/disabled.
|
private boolean |
trulyVisible
Value is controlled via
ancestorAdded(AncestorEvent) and
ancestorRemoved(AncestorEvent) |
protected OnFileChangeListener |
watchListener
This is mostly used to preemptively null-out the listener.
|
allowDirectorySelectionCbx, ATTR_DATASOURCEID, ATTR_DSCOMP, ATTR_FILECOUNT, ATTR_FILEPATTERN, ATTR_FILTERS, ATTR_PATH, ATTR_POLLON, ATTR_SHOWPATTERNFIELD, patternFld, recentFilesCbxATTR_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, stationMapcancelButton, CMD_LOAD, contents, GRID_INSETS, GRID_SPACING, GRID_SPACING_H, GRID_SPACING_V, haveData, helpPath, loadButton, MAP_COLOR, simpleModelistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTBLANK_COMP_GROUP, COMP_MONITORPANEL, DATASELECTOR_NAME, DEFAULT_DOCPATH, DEFAULT_SERVERSTATE, DISPLAY_NAME, DISPLAYCONTROLLER_NAME, ELEMENT_DOUBLE_WIDTH, ELEMENT_DOUBLEDOUBLE_WIDTH, ELEMENT_HALF_WIDTH, ELEMENT_ONEHALF_WIDTH, ELEMENT_WIDTH, EVENT_FILECHOOSER_START, EVENT_FILECHOOSER_STOP, FILTER_MCV, FILTER_MCVMCVZ, FILTER_MCVZ, GAP_RELATED, GAP_UNRELATED, HOMEPAGE_URL, ICON_ACCEPT_SMALL, ICON_ADD_SMALL, ICON_APPLY_SMALL, ICON_BACKGROUND_SMALL, ICON_CANCEL, ICON_CANCEL_SMALL, ICON_CHECKVERSION_SMALL, ICON_COLORTABLE_SMALL, ICON_CONNECT_SMALL, ICON_CONSOLE_SMALL, ICON_DATAEXPLORER_SMALL, ICON_DEFAULTLAYOUT_SMALL, ICON_DEFAULTLAYOUTADD_SMALL, ICON_DEFAULTLAYOUTDELETE_SMALL, ICON_DELETE_SMALL, ICON_DISCONNECT_SMALL, ICON_ERROR_SMALL, ICON_EXCLAMATION_SMALL, ICON_FAVORITE_SMALL, ICON_FAVORITEMANAGE_SMALL, ICON_FAVORITESAVE_SMALL, ICON_FORUMS_SMALL, ICON_GETTINGSTARTED_SMALL, ICON_HELP, ICON_HELP_SMALL, ICON_HELPTIPS_SMALL, ICON_INFORMATION_SMALL, ICON_LAYOUTEDIT_SMALL, ICON_LOCALDATA_SMALL, ICON_LOCATION_SMALL, ICON_MCIDASV_DEFAULT, ICON_MCIDASV_SMALL, ICON_NEWTAB_SMALL, ICON_NEWWINDOW_SMALL, ICON_NEXT_SMALL, ICON_NOTE_SMALL, ICON_OPEN, ICON_OPEN_SMALL, ICON_PREFERENCES_SMALL, ICON_PREVIOUS_SMALL, ICON_RANDOM_SMALL, ICON_RANGEANDBEARING_SMALL, ICON_REDO_SMALL, ICON_REFRESH, ICON_REFRESH_SMALL, ICON_REMOVE_SMALL, ICON_REMOVEDATA_SMALL, ICON_REMOVELAYERS_SMALL, ICON_REMOVELAYERSDATA_SMALL, ICON_SAVE, ICON_SAVE_SMALL, ICON_SAVEAS_SMALL, ICON_SUPPORT_SMALL, ICON_UNDO_SMALL, ICON_UPDATE, ICON_USERSGUIDE_SMALL, lineStyles, LOCAL_ADDE_PORT, MACRO_BUILDDATE, MACRO_COPYRIGHT_YEAR, MACRO_GRANULE_COUNT, MACRO_IDV_VERSION, MACRO_VERSION, MACRO_VISAD_VERSION, MAX_MEMORY_32BIT, MCV_BLUE, MCV_BLUE_DARK, NOTICE_URL, OS_OSX, PANEL_NAME, PREF_AUTO_SAVE_DEFAULT_LAYOUT, PREF_CONFIRM_REMOVE_BOTH, PREF_CONFIRM_REMOVE_DATA, PREF_CONFIRM_REMOVE_LAYERS, PREF_IMAGE_PREVIEW, PREF_LIST_ADDE_SERVERS, PREF_LIST_ADVANCED, PREF_LIST_AVAILABLE_DISPLAYS, PREF_LIST_DATA_CHOOSERS, PREF_LIST_FORMATS_DATA, PREF_LIST_GENERAL, PREF_LIST_LOCAL_ADDE, PREF_LIST_NAV_CONTROLS, PREF_LIST_TOOLBAR, PREF_LIST_VIEW, PREF_MODIFY_DEFAULT_COLOR_TABLE, PREF_OPEN_LIMIT_WIN, PREF_PRERELEASE_CHECK, PREF_SAVE_DASHBOARD_VIZ, PREF_SERVERSTATE, PREF_SHOW_SYSTEM_BUNDLES, PREF_SYSTEMSERVERSIMG, PREF_TBM_SIZE, PREF_VERSION_CHECK, PREF_VIIRS_PLUGIN, PRERELEASE_URL, PROP_ABOUTTEXT, PROP_APP_ICON, PROP_BUILD_DATE, PROP_CHAN, PROP_COPYRIGHT_YEAR, PROP_DASHBOARD_BOUNDS, PROP_GRANULE_COUNT, PROP_HOMEPAGE, PROP_HYDRA_360, PROP_RECENT_COLORS, PROP_SERVERS, PROP_SERVERS_ALL, PROP_SYSMEM, PROP_TABBED_UI, PROP_VERSION_MAJOR, PROP_VERSION_MINOR, PROP_VERSION_RELEASE, PROP_VERSIONFILE, PROP_VISAD_DATE, PROP_VISAD_ORIGINAL, PROP_VISAD_PARSE_FAIL, PROP_VISAD_REVISION, PROP_VP_CATOPEN, PROP_VP_SHOWCATS, PROP_VP_SHOWPOPUP, PROPERTIES_FILE, SCRUB_STRINGS_FILE, SUFFIX_MCV, SUFFIX_MCVZ, TOOLTIP_PROGRESSIVE_RESOLUTION, USER_DIRECTORY_NAME, VERSION_HANDLER_URL, VERSION_URL, VIIRS_PLUGIN_VERSION_NUMBERARG_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_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, NULL_STRING, 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_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_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 |
|---|
FileChooser(ucar.unidata.idv.chooser.IdvChooserManager mgr,
org.w3c.dom.Element root)
|
| Modifier and Type | Method and Description |
|---|---|
void |
ancestorAdded(javax.swing.event.AncestorEvent event) |
void |
ancestorMoved(javax.swing.event.AncestorEvent event)
Not implemented.
|
void |
ancestorRemoved(javax.swing.event.AncestorEvent event) |
private static java.util.Map<java.lang.String,java.lang.Integer> |
comboBoxContents(javax.swing.JComboBox box)
Maps data source IDs to their index within
box. |
protected java.beans.PropertyChangeListener |
createPropertyListener()
Creates a
PropertyChangeListener that listens for
JFileChooser.DIRECTORY_CHANGED_PROPERTY. |
protected OnFileChangeListener |
createWatcher()
Creates a directory monitoring
Service. |
void |
doLoadInThread()
Override the base class method to catch the do load
|
protected javax.swing.JComponent |
doMakeContents()
Create a more McIDAS-V-like GUI layout
|
void |
doUpdate()
Override the base class method to catch the do update
|
static java.lang.String |
findValidParent(java.lang.String filePath)
Find the closest valid "parent" of the given path.
|
protected javax.swing.JComponent |
getAccessory()
Get the accessory component
|
protected boolean |
getAllowMultiple()
Allow multiple file selection.
|
protected javax.swing.JPanel |
getBottomPanel()
Get the bottom panel for the chooser
|
protected javax.swing.JPanel |
getCenterPanel()
Get the center panel for the chooser
|
protected java.lang.String |
getDataSourceId()
If the dataSources combo box is non-null then
return the data source id the user selected.
|
protected javax.swing.JComboBox |
getDataSourcesComponent()
Overridden so that McIDAS-V can attempt auto-selecting the default data
source type.
|
protected java.lang.String |
getDataSourcesLabel()
Label for
getDataSourcesComponent() selector. |
java.lang.String |
getPath()
See the javadoc for
getPath(String). |
java.lang.String |
getPath(java.lang.String defaultValue)
Get the path the
JFileChooser should be using. |
protected void |
getTopComponents(java.util.List comps)
Get the top components for the chooser
|
protected javax.swing.JPanel |
getTopPanel()
Get the top panel for the chooser
|
void |
handleChangeWatchService(java.lang.String newPath)
Respond to path changes in the
JFileChooser. |
void |
handleStartWatchService(java.lang.String topic,
java.lang.Object reason)
Begin monitoring the directory returned by
getPath() for
changes. |
void |
handleStopWatchService(java.lang.String topic,
java.lang.Object reason)
Disable directory monitoring (if it was enabled in the first place).
|
boolean |
isTrulyVisible()
Determine if this file chooser is actually visible to the user.
|
void |
setHaveData(boolean have)
Set whether the user has made a selection that contains data.
|
void |
setPath(java.lang.String newPath)
Change the path that the file chooser is presenting to the user.
|
void |
setStatus(java.lang.String statusString,
java.lang.String foo) |
private void |
setTrulyVisible(boolean value)
Set whether or not this file chooser is actually visible to the user.
|
protected void |
updateStatus()
Set the status message appropriately
|
checkRecentPatternWidgetsEnable, doMakeFileChooser, getAllowDirectorySelectionCbx, getButtonLabels, getFileChooser, getFileCount, getFileNames, getFilePattern, getLoadToolTip, getRecentFilesComponent, getRecentFilesComponent, getUpdateToolTip, selectFiles, selectFilesInner, shouldShowRecentComponentclearSelectedStations, clearStations, closeChooser, createStationMap, decorateButtons, doCancel, doClose, errorMessage, getAttribute, getContents, getDataManager, getDataSource, getDataSourceId, getDataSourceProperties, 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, makeDataSource, makeTimeMenus, newSelectedStations, resetDataSourceId, setDataSource, setDataSourceListener, shouldDoUpdateOnFirstDisplay, showNormalCursor, showWaitCursor, startTask, stopTask, stopTaskAndIsOk, taskOk, userMessage, usingStationsactionPerformed, addPropertyChangeListener, canDoUpdate, clearWaitCursor, doHelp, doLoad, firePropertyChange, getDefaultButtons, getHaveData, getLoadCommandName, getMessageTemplate, getSimpleMode, getStatusComponent, padLabel, registerStatusComp, revalidate, setHelpPath, setMessageTemplate, setStatus, showNormalCursor, showWaitCursorgetAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIaddAncestorListener, 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, updateadd, 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, validateTreeaction, 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, transferFocusUpCycleprivate static final org.slf4j.Logger logger
public static final java.lang.String ATTR_SELECT_DSID
selectDefaultDataSource,
Constant Field Valuesprivate final java.lang.String defaultDataSourceId
null.private final boolean selectDefaultDataSource
defaultDataSourceId within the JComboBox returned by
getDataSourcesComponent(). Defaults to false.private java.lang.String defaultDataSourceName
private javax.swing.JComboBox sourceComboBox
protected javax.swing.JFileChooser fileChooser
protected javax.swing.JPanel topPanel
protected javax.swing.JPanel centerPanel
protected javax.swing.JPanel bottomPanel
protected java.lang.Boolean buttonPressed
protected ucar.unidata.idv.IntegratedDataViewer idv
protected OnFileChangeListener watchListener
private boolean trulyVisible
ancestorAdded(AncestorEvent) and
ancestorRemoved(AncestorEvent)private javax.swing.JLabel statusLabel
public FileChooser(ucar.unidata.idv.chooser.IdvChooserManager mgr, org.w3c.dom.Element root)
mgr - Global IDV chooser manager.root - XML representing this chooser.protected java.lang.String getDataSourcesLabel()
getDataSourcesComponent() selector.String to use as the label for data type selector.protected javax.swing.JComboBox getDataSourcesComponent()
getDataSourcesComponent in class ucar.unidata.idv.chooser.IdvChooserprivate static java.util.Map<java.lang.String,java.lang.Integer> comboBoxContents(javax.swing.JComboBox box)
box. This method is
only applicable to JComboBoxes created for FileChoosers.box - Combo box containing relevant data source IDs and indices.box.protected java.lang.String getDataSourceId()
getDataSourceId in class ucar.unidata.idv.chooser.IdvChooserprotected javax.swing.JComponent getAccessory()
getAccessory in class ucar.unidata.idv.chooser.FileChooserpublic void doLoadInThread()
doLoadInThread in class ucar.unidata.idv.chooser.FileChooserpublic void doUpdate()
doUpdate in class ucar.unidata.idv.chooser.FileChooserprotected boolean getAllowMultiple()
true.public void setHaveData(boolean have)
setHaveData in class ucar.unidata.idv.chooser.FileChooserhave - true to set the haveData property. Enables the
loading buttonprotected void updateStatus()
updateStatus in class ucar.unidata.idv.chooser.IdvChooserprotected void getTopComponents(java.util.List comps)
getTopComponents in class ucar.unidata.idv.chooser.FileChoosercomps - the top componentprotected javax.swing.JPanel getTopPanel()
protected javax.swing.JPanel getBottomPanel()
protected javax.swing.JPanel getCenterPanel()
protected java.beans.PropertyChangeListener createPropertyListener()
PropertyChangeListener that listens for
JFileChooser.DIRECTORY_CHANGED_PROPERTY.
This is used to disable directory monitoring in directories not being looked at, as well as enabling monitoring of the directory the user has chosen.
PropertyChangeListener that listens for
JFileChooser directory changes.public void setPath(java.lang.String newPath)
This value will be written to the user's preferences so that the user can pick up where they left off after restarting McIDAS-V.
newPath - Path to set.public java.lang.String getPath()
getPath(String).
The difference between the two is that this method passes the value
of System.getProperty("user.home") to getPath(String)
as the default value.
public java.lang.String getPath(java.lang.String defaultValue)
JFileChooser should be using.
If the path in the user's preferences is null
(or does not exist), defaultValue will be returned.
If there is a nonexistent path in the preferences file,
findValidParent(String) will be used.
defaultValue - Default path to use if there is a "bad"
path in the user's preferences.
Cannot be null.java.lang.NullPointerException - if defaultValue is null.public void handleChangeWatchService(java.lang.String newPath)
JFileChooser.
This method will disable monitoring of the previous path and then
enable monitoring of newPath.
newPath - New path to begin watching.public void handleStartWatchService(java.lang.String topic, java.lang.Object reason)
getPath() for
changes.topic - Artifact from EventBus annotation. Not used.reason - Optional "Reason" for starting.
Helpful for logging.public void handleStopWatchService(java.lang.String topic, java.lang.Object reason)
topic - Artifact from EventBus annotation. Not used.reason - Optional "Reason" for starting.
Helpful for logging.protected OnFileChangeListener createWatcher()
Service.public static java.lang.String findValidParent(java.lang.String filePath)
Example: /tmp/foo/bar/baz/ is filePath, but only
/tmp/foo exists. This method will return /tmp/foo.
filePath - Path to use a base. Cannot be null, but the path
does not need to exist.filePath.public void setStatus(java.lang.String statusString, java.lang.String foo)
setStatus in class ucar.unidata.ui.ChooserPanelprotected javax.swing.JComponent doMakeContents()
doMakeContents in class ucar.unidata.idv.chooser.FileChooserpublic void ancestorAdded(javax.swing.event.AncestorEvent event)
ancestorAdded in interface javax.swing.event.AncestorListenerpublic void ancestorRemoved(javax.swing.event.AncestorEvent event)
ancestorRemoved in interface javax.swing.event.AncestorListenerpublic void ancestorMoved(javax.swing.event.AncestorEvent event)
ancestorMoved in interface javax.swing.event.AncestorListenerevent - Ignored.public boolean isTrulyVisible()
private void setTrulyVisible(boolean value)
value - true means visible.