Class FileChooser
- All Implemented Interfaces:
Constants,ActionListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible,AncestorListener,IdvConstants
- Direct Known Subclasses:
HRITChooser,Level2RadarChooser,PollingFileChooser,SuomiNPPChooser
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.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class ucar.unidata.idv.chooser.FileChooser
FileChooser.MyFileChooserNested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringChooser attribute that controls selecting the default data source.protected JPanelprotected BooleanBoolean to tell if the load was initiated from the load button (as opposed to typing in a filename... we need to capture that)protected JPanelprivate final StringDefault data source ID for this chooser.private StringIf there is a default data source ID, get the combo box display valueprotected JFileChooserGet a handle on the actual file chooser.protected IntegratedDataViewerGet a handle on the IDV.private static final org.slf4j.LoggerLogging object.private final booleanWhether or not to select the data source corresponding todefaultDataSourceIdwithin theJComboBoxreturned bygetDataSourcesComponent().private JComboBoxDifferent subclasses can use the combobox of data source idsprivate JLabelprotected JPanelPanels that might need to be enabled/disabled.private booleanValue is controlled viaancestorAdded(AncestorEvent)andancestorRemoved(AncestorEvent)protected OnFileChangeListenerThis is mostly used to preemptively null-out the listener.Fields inherited from class ucar.unidata.idv.chooser.FileChooser
allowDirectorySelectionCbx, ATTR_DATASOURCEID, ATTR_DSCOMP, ATTR_FILECOUNT, ATTR_FILEPATTERN, ATTR_FILTERS, ATTR_PATH, ATTR_POLLON, ATTR_SHOWPATTERNFIELD, patternFld, recentFilesCbxFields inherited from class ucar.unidata.idv.chooser.IdvChooser
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, stationMapFields inherited from class ucar.unidata.ui.ChooserPanel
cancelButton, CMD_LOAD, contents, GRID_INSETS, GRID_SPACING, GRID_SPACING_H, GRID_SPACING_V, haveData, helpPath, loadButton, MAP_COLOR, simpleModeFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface edu.wisc.ssec.mcidasv.Constants
BLANK_COMP_GROUP, COMP_MONITORPANEL, DATASELECTOR_NAME, DEFAULT_COLOR_PICKER_SIZE, DEFAULT_DOCPATH, DEFAULT_MAP_Z_LEVEL, 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_NUM_IMAGE_PRESET_IMGCHOOSER, PREF_NUM_IMAGE_PRESET_RADARCHOOSER, PREF_OPEN_LIMIT_WIN, PREF_PRERELEASE_CHECK, PREF_RELATIVE_TIME_BUNDLE, PREF_SAVE_DASHBOARD_VIZ, PREF_SERVERSTATE, PREF_SHOW_SYSTEM_BUNDLES, PREF_SYSTEMSERVERSIMG, PREF_TBM_SIZE, PREF_VERSION_CHECK, 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_URLFields inherited from interface ucar.unidata.idv.IdvConstants
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, NULL_STRING, 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_ZIDVFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidancestorAdded(AncestorEvent event) voidancestorMoved(AncestorEvent event) Not implemented.voidancestorRemoved(AncestorEvent event) Maps data source IDs to their index withinbox.protected PropertyChangeListenerCreates aPropertyChangeListenerthat listens forJFileChooser.DIRECTORY_CHANGED_PROPERTY.protected OnFileChangeListenerCreates a directory monitoringService.voidOverride the base class method to catch the do loadprotected JComponentCreate a more McIDAS-V-like GUI layoutvoiddoUpdate()Override the base class method to catch the do updatestatic StringfindValidParent(String filePath) Find the closest valid "parent" of the given path.protected JComponentGet the accessory componentprotected booleanAllow multiple file selection.protected JPanelGet the bottom panel for the chooserprotected JPanelGet the center panel for the chooserprotected StringIf the dataSources combo box is non-null then return the data source id the user selected.protected JComboBoxOverridden so that McIDAS-V can attempt auto-selecting the default data source type.protected StringLabel forgetDataSourcesComponent()selector.getPath()See the javadoc forgetPath(String).Get the path theJFileChoosershould be using.protected voidgetTopComponents(List comps) Get the top components for the chooserprotected JPanelGet the top panel for the chooservoidhandleChangeWatchService(String newPath) Respond to path changes in theJFileChooser.voidhandleStartWatchService(String topic, Object reason) Begin monitoring the directory returned bygetPath()for changes.voidhandleStopWatchService(String topic, Object reason) Disable directory monitoring (if it was enabled in the first place).booleanDetermine if this file chooser is actually visible to the user.voidsetHaveData(boolean have) Set whether the user has made a selection that contains data.voidChange the path that the file chooser is presenting to the user.voidprivate voidsetTrulyVisible(boolean value) Set whether or not this file chooser is actually visible to the user.protected voidSet the status message appropriatelyMethods inherited from class ucar.unidata.idv.chooser.FileChooser
checkRecentPatternWidgetsEnable, doMakeFileChooser, getAllowDirectorySelectionCbx, getButtonLabels, getFileChooser, getFileCount, getFileNames, getFilePattern, getLoadToolTip, getRecentFilesComponent, getRecentFilesComponent, getUpdateToolTip, selectFiles, selectFilesInner, shouldShowRecentComponentMethods inherited from class ucar.unidata.idv.chooser.IdvChooser
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, usingStationsMethods inherited from class ucar.unidata.ui.ChooserPanel
actionPerformed, addPropertyChangeListener, canDoUpdate, clearWaitCursor, doHelp, doLoad, firePropertyChange, getDefaultButtons, getHaveData, getLoadCommandName, getMessageTemplate, getSimpleMode, getStatusComponent, padLabel, registerStatusComp, revalidate, setHelpPath, setMessageTemplate, setStatus, showNormalCursor, showWaitCursorMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods 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, 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, updateMethods inherited from class java.awt.Container
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, validateTreeMethods 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, 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, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
logger
Logging object. -
ATTR_SELECT_DSID
Chooser attribute that controls selecting the default data source.- See Also:
-
defaultDataSourceId
Default data source ID for this chooser. Defaults tonull. -
selectDefaultDataSource
Whether or not to select the data source corresponding todefaultDataSourceIdwithin theJComboBoxreturned bygetDataSourcesComponent(). Defaults tofalse. -
defaultDataSourceName
If there is a default data source ID, get the combo box display value -
sourceComboBox
Different subclasses can use the combobox of data source ids -
fileChooser
Get a handle on the actual file chooser. -
topPanel
Panels that might need to be enabled/disabled. -
centerPanel
-
bottomPanel
-
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) -
idv
Get a handle on the IDV. -
watchListener
This is mostly used to preemptively null-out the listener. -
trulyVisible
Value is controlled viaancestorAdded(AncestorEvent)andancestorRemoved(AncestorEvent) -
statusLabel
-
-
Constructor Details
-
FileChooser
- Parameters:
mgr- Global IDV chooser manager.root- XML representing this chooser.
-
-
Method Details
-
getDataSourcesLabel
Label forgetDataSourcesComponent()selector.- Returns:
Stringto use as the label for data type selector.
-
getDataSourcesComponent
Overridden so that McIDAS-V can attempt auto-selecting the default data source type.- Overrides:
getDataSourcesComponentin classIdvChooser
-
comboBoxContents
Maps data source IDs to their index withinbox. This method is only applicable toJComboBoxes created forFileChoosers.- Parameters:
box- Combo box containing relevant data source IDs and indices.- Returns:
- A mapping of data source IDs to their offset within
box.
-
getDataSourceId
If the dataSources combo box is non-null then return the data source id the user selected. Else, return null- Overrides:
getDataSourceIdin classIdvChooser- Returns:
- Data source id
-
getAccessory
Get the accessory component- Overrides:
getAccessoryin classFileChooser- Returns:
- the component
-
doLoadInThread
Override the base class method to catch the do load- Overrides:
doLoadInThreadin classFileChooser
-
doUpdate
Override the base class method to catch the do update- Overrides:
doUpdatein classFileChooser
-
getAllowMultiple
Allow multiple file selection. Override if necessary.- Returns:
- Always returns
true.
-
setHaveData
Set whether the user has made a selection that contains data.- Overrides:
setHaveDatain classFileChooser- Parameters:
have- true to set the haveData property. Enables the loading button
-
updateStatus
Set the status message appropriately- Overrides:
updateStatusin classIdvChooser
-
getTopComponents
Get the top components for the chooser- Overrides:
getTopComponentsin classFileChooser- Parameters:
comps- the top component
-
getTopPanel
Get the top panel for the chooser- Returns:
- the top panel
-
getBottomPanel
Get the bottom panel for the chooser- Returns:
- the bottom panel
-
getCenterPanel
Get the center panel for the chooser- Returns:
- the center panel
-
createPropertyListener
Creates aPropertyChangeListenerthat listens forJFileChooser.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.
- Returns:
PropertyChangeListenerthat listens forJFileChooserdirectory changes.
-
setPath
Change the path that the file chooser is presenting to the user.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.
- Parameters:
newPath- Path to set.
-
getPath
See the javadoc forgetPath(String).The difference between the two is that this method passes the value of
System.getProperty("user.home")togetPath(String)as the default value.- Returns:
- Path to use for the chooser.
-
getPath
Get the path theJFileChoosershould be using.If the path in the user's preferences is
null(or does not exist),defaultValuewill be returned.If there is a nonexistent path in the preferences file,
findValidParent(String)will be used.- Parameters:
defaultValue- Default path to use if there is a "bad" path in the user's preferences. Cannot benull.- Returns:
- Path to use for the chooser.
- Throws:
NullPointerException- ifdefaultValueisnull.
-
handleChangeWatchService
Respond to path changes in theJFileChooser.This method will disable monitoring of the previous path and then enable monitoring of
newPath.- Parameters:
newPath- New path to begin watching.
-
handleStartWatchService
Begin monitoring the directory returned bygetPath()for changes.- Parameters:
topic- Artifact fromEventBusannotation. Not used.reason- Optional "Reason" for starting. Helpful for logging.
-
handleStopWatchService
Disable directory monitoring (if it was enabled in the first place).- Parameters:
topic- Artifact fromEventBusannotation. Not used.reason- Optional "Reason" for starting. Helpful for logging.
-
createWatcher
Creates a directory monitoringService.- Returns:
- Directory monitor that will respond to changes.
-
findValidParent
Find the closest valid "parent" of the given path.Example:
/tmp/foo/bar/baz/isfilePath, but only/tmp/fooexists. This method will return/tmp/foo.- Parameters:
filePath- Path to use a base. Cannot benull, but the path does not need to exist.- Returns:
- Closest existing ancestor of
filePath.
-
setStatus
- Overrides:
setStatusin classChooserPanel
-
doMakeContents
Create a more McIDAS-V-like GUI layout- Overrides:
doMakeContentsin classFileChooser
-
ancestorAdded
- Specified by:
ancestorAddedin interfaceAncestorListener
-
ancestorRemoved
- Specified by:
ancestorRemovedin interfaceAncestorListener
-
ancestorMoved
Not implemented.- Specified by:
ancestorMovedin interfaceAncestorListener- Parameters:
event- Ignored.
-
isTrulyVisible
Determine if this file chooser is actually visible to the user.- Returns:
- Whether or not this component has been made visible.
-
setTrulyVisible
Set whether or not this file chooser is actually visible to the user.- Parameters:
value-truemeans visible.
-