public class TLEFileChooser extends javax.swing.JFileChooser implements javax.swing.event.AncestorListener, java.beans.PropertyChangeListener
javax.swing.JFileChooser.AccessibleJFileChooserjavax.swing.JComponent.AccessibleJComponent| Modifier and Type | Field and Description |
|---|---|
private static java.lang.String |
ID |
private static org.slf4j.Logger |
logger |
private PolarOrbitTrackChooser |
potc |
private static long |
serialVersionUID
auto-generated default value
|
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.
|
ACCEPT_ALL_FILE_FILTER_USED_CHANGED_PROPERTY, accessibleContext, ACCESSORY_CHANGED_PROPERTY, APPROVE_BUTTON_MNEMONIC_CHANGED_PROPERTY, APPROVE_BUTTON_TEXT_CHANGED_PROPERTY, APPROVE_BUTTON_TOOL_TIP_TEXT_CHANGED_PROPERTY, APPROVE_OPTION, APPROVE_SELECTION, CANCEL_OPTION, CANCEL_SELECTION, CHOOSABLE_FILE_FILTER_CHANGED_PROPERTY, CONTROL_BUTTONS_ARE_SHOWN_CHANGED_PROPERTY, CUSTOM_DIALOG, DIALOG_TITLE_CHANGED_PROPERTY, DIALOG_TYPE_CHANGED_PROPERTY, DIRECTORIES_ONLY, DIRECTORY_CHANGED_PROPERTY, ERROR_OPTION, FILE_FILTER_CHANGED_PROPERTY, FILE_HIDING_CHANGED_PROPERTY, FILE_SELECTION_MODE_CHANGED_PROPERTY, FILE_SYSTEM_VIEW_CHANGED_PROPERTY, FILE_VIEW_CHANGED_PROPERTY, FILES_AND_DIRECTORIES, FILES_ONLY, MULTI_SELECTION_ENABLED_CHANGED_PROPERTY, OPEN_DIALOG, SAVE_DIALOG, SELECTED_FILE_CHANGED_PROPERTY, SELECTED_FILES_CHANGED_PROPERTYlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW| Constructor and Description |
|---|
TLEFileChooser(PolarOrbitTrackChooser chooser,
java.lang.String directory,
java.lang.String filename)
Create the file chooser
|
| Modifier and Type | Method and Description |
|---|---|
void |
ancestorAdded(javax.swing.event.AncestorEvent ancestorEvent) |
void |
ancestorMoved(javax.swing.event.AncestorEvent ancestorEvent)
Not implemented.
|
void |
ancestorRemoved(javax.swing.event.AncestorEvent ancestorEvent) |
void |
approveSelection()
Approve the selection
|
private OnFileChangeListener |
createWatcher()
Creates a directory monitoring
service. |
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. |
PolarOrbitTrackChooser |
getPotc() |
void |
handleChangeWatchService(java.lang.String newPath)
Respond to path changes in the
JFileChooser. |
protected void |
handleFileChanged() |
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 |
propertyChange(java.beans.PropertyChangeEvent pce) |
private void |
refreshIfNeeded(java.lang.String filePath)
Used to handle the
OnFileChangeListener.onFileDelete(String) and
OnFileChangeListener.onWatchInvalidation(String) events. |
void |
setPath(java.lang.String newPath)
Change the path that the file chooser is presenting to the user.
|
void |
setPotc(PolarOrbitTrackChooser potc) |
void |
setSelectedFile(java.io.File file) |
private void |
setTrulyVisible(boolean value)
Set whether or not this file chooser is actually visible to the user.
|
accept, addActionListener, addChoosableFileFilter, cancelSelection, changeToParentDirectory, createDialog, ensureFileIsVisible, fireActionPerformed, getAcceptAllFileFilter, getAccessibleContext, getAccessory, getActionListeners, getApproveButtonMnemonic, getApproveButtonText, getApproveButtonToolTipText, getChoosableFileFilters, getControlButtonsAreShown, getCurrentDirectory, getDescription, getDialogTitle, getDialogType, getDragEnabled, getFileFilter, getFileSelectionMode, getFileSystemView, getFileView, getIcon, getName, getSelectedFile, getSelectedFiles, getTypeDescription, getUI, getUIClassID, isAcceptAllFileFilterUsed, isDirectorySelectionEnabled, isFileHidingEnabled, isFileSelectionEnabled, isMultiSelectionEnabled, isTraversable, paramString, removeActionListener, removeChoosableFileFilter, rescanCurrentDirectory, resetChoosableFileFilters, setAcceptAllFileFilterUsed, setAccessory, setApproveButtonMnemonic, setApproveButtonMnemonic, setApproveButtonText, setApproveButtonToolTipText, setControlButtonsAreShown, setCurrentDirectory, setDialogTitle, setDialogType, setDragEnabled, setFileFilter, setFileHidingEnabled, setFileSelectionMode, setFileSystemView, setFileView, setMultiSelectionEnabled, setSelectedFiles, setup, showDialog, showOpenDialog, showSaveDialog, 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, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateadd, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, 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 java.lang.String ID
private static final long serialVersionUID
private static final org.slf4j.Logger logger
private PolarOrbitTrackChooser potc
protected OnFileChangeListener watchListener
private boolean trulyVisible
ancestorAdded(AncestorEvent) and
ancestorRemoved(AncestorEvent)public TLEFileChooser(PolarOrbitTrackChooser chooser, java.lang.String directory, java.lang.String filename)
chooser - PolarOrbitTrackChooser to which this TLEFileChooser belongs.directory - Initial directory.filename - Initial filename within directory.public void setSelectedFile(java.io.File file)
setSelectedFile in class javax.swing.JFileChooserpublic void approveSelection()
approveSelection in class javax.swing.JFileChooserpublic void setPotc(PolarOrbitTrackChooser potc)
public PolarOrbitTrackChooser getPotc()
public void propertyChange(java.beans.PropertyChangeEvent pce)
propertyChange in interface java.beans.PropertyChangeListenerprotected void handleFileChanged()
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,
FileChooser.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.private OnFileChangeListener createWatcher()
service.private void refreshIfNeeded(java.lang.String filePath)
OnFileChangeListener.onFileDelete(String) and
OnFileChangeListener.onWatchInvalidation(String) events.filePath - Path of interest. Cannot be null.public void ancestorAdded(javax.swing.event.AncestorEvent ancestorEvent)
ancestorAdded in interface javax.swing.event.AncestorListenerpublic void ancestorRemoved(javax.swing.event.AncestorEvent ancestorEvent)
ancestorRemoved in interface javax.swing.event.AncestorListenerpublic void ancestorMoved(javax.swing.event.AncestorEvent ancestorEvent)
ancestorMoved in interface javax.swing.event.AncestorListenerancestorEvent - Ignored.public boolean isTrulyVisible()
private void setTrulyVisible(boolean value)
value - true means visible.