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.MyFileChooser
javax.swing.JPanel.AccessibleJPanel
javax.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, recentFilesCbx
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
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
BLANK_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, 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_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_NUMBER
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_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, shouldShowRecentComponent
clearSelectedStations, 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, usingStations
actionPerformed, addPropertyChangeListener, canDoUpdate, clearWaitCursor, doHelp, doLoad, firePropertyChange, getDefaultButtons, getHaveData, getLoadCommandName, getMessageTemplate, getSimpleMode, getStatusComponent, padLabel, registerStatusComp, revalidate, setHelpPath, setMessageTemplate, 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
private 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.IdvChooser
private static java.util.Map<java.lang.String,java.lang.Integer> comboBoxContents(javax.swing.JComboBox box)
box
. This method is
only applicable to JComboBox
es created for FileChooser
s.box
- Combo box containing relevant data source IDs and indices.box
.protected java.lang.String getDataSourceId()
getDataSourceId
in class ucar.unidata.idv.chooser.IdvChooser
protected javax.swing.JComponent getAccessory()
getAccessory
in class ucar.unidata.idv.chooser.FileChooser
public void doLoadInThread()
doLoadInThread
in class ucar.unidata.idv.chooser.FileChooser
public void doUpdate()
doUpdate
in class ucar.unidata.idv.chooser.FileChooser
protected boolean getAllowMultiple()
true
.public void setHaveData(boolean have)
setHaveData
in class ucar.unidata.idv.chooser.FileChooser
have
- true to set the haveData property. Enables the
loading buttonprotected void updateStatus()
updateStatus
in class ucar.unidata.idv.chooser.IdvChooser
protected void getTopComponents(java.util.List comps)
getTopComponents
in class ucar.unidata.idv.chooser.FileChooser
comps
- 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.ChooserPanel
protected javax.swing.JComponent doMakeContents()
doMakeContents
in class ucar.unidata.idv.chooser.FileChooser
public void ancestorAdded(javax.swing.event.AncestorEvent event)
ancestorAdded
in interface javax.swing.event.AncestorListener
public void ancestorRemoved(javax.swing.event.AncestorEvent event)
ancestorRemoved
in interface javax.swing.event.AncestorListener
public void ancestorMoved(javax.swing.event.AncestorEvent event)
ancestorMoved
in interface javax.swing.event.AncestorListener
event
- Ignored.public boolean isTrulyVisible()
private void setTrulyVisible(boolean value)
value
- true
means visible.