Package adams.gui.chooser
Class AbstractReportFileChooser<T extends Report,R extends AbstractReportReader,W extends AbstractReportWriter>
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JFileChooser
-
- adams.gui.chooser.BaseFileChooser
-
- adams.gui.chooser.AbstractExtensionFileFilterFileChooser<ExtensionFileFilterWithClass>
-
- adams.gui.chooser.AbstractConfigurableExtensionFileFilterFileChooser<R,W>
-
- adams.gui.chooser.AbstractReportFileChooser<T,R,W>
-
- Type Parameters:
T
- the type of report
- All Implemented Interfaces:
FileChooser
,ImageObserver
,MenuContainer
,Serializable
,Accessible
- Direct Known Subclasses:
DefaultReportFileChooser
public abstract class AbstractReportFileChooser<T extends Report,R extends AbstractReportReader,W extends AbstractReportWriter> extends AbstractConfigurableExtensionFileFilterFileChooser<R,W>
A specialized JFileChooser that lists all available file Readers and Writers for reports.
Based onweka.gui.ConverterFileChooser
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
ConverterFileChooser
, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JFileChooser
JFileChooser.AccessibleJFileChooser
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description protected static Hashtable<Class,List<ExtensionFileFilterWithClass>>
m_ReaderFileFilters
the file filters for the readers.protected static Hashtable<Class,List<ExtensionFileFilterWithClass>>
m_WriterFileFilters
the file filters for the writers.-
Fields inherited from class adams.gui.chooser.AbstractConfigurableExtensionFileFilterFileChooser
m_CheckBoxOptions, m_Editor, m_LastOpenHandler, m_LastSaveHandler
-
Fields inherited from class adams.gui.chooser.AbstractExtensionFileFilterFileChooser
m_CurrentHandler, m_DialogType, m_FileMustExist, m_LastFilter, m_Listener, UNHANDLED_DIALOG
-
Fields inherited from class adams.gui.chooser.BaseFileChooser
m_AllowGlobFilters, m_AutoAppendExtension, m_DefaultExtension, m_PanelBookmarks, m_PanelBookmarksAndFilter, m_PanelFilter, m_PromptOverwriteFile
-
Fields inherited from class javax.swing.JFileChooser
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_PROPERTY
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractReportFileChooser()
onstructs a FileChooser pointing to the user's default directory.protected
AbstractReportFileChooser(File currentDirectory)
Constructs a FileChooser using the given File as the path.protected
AbstractReportFileChooser(String currentDirectory)
Constructs a FileChooser using the given path.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
configureCurrentHandlerHook(int dialogType)
configures the current converter.protected abstract R
getDefaultReader()
Returns the default reader.protected abstract W
getDefaultWriter()
Returns the default writer.protected boolean
getFiltersInitialized()
Returns whether the filters have already been initialized.protected List<ExtensionFileFilterWithClass>
getOpenFileFilters()
Returns the file filters for opening files.protected Class
getReaderClass()
Returns the reader superclass for the GOE.protected List<ExtensionFileFilterWithClass>
getSaveFileFilters()
Returns the file filters for writing files.protected Class
getWriterClass()
Returns the writer superclass for the GOE.protected static void
initFilters(AbstractReportFileChooser chooser, boolean reader, String[] classnames)
initializes the ReportFileExtensionFilters.void
setAllowGlobFilters(boolean value)
Ignored.-
Methods inherited from class adams.gui.chooser.AbstractConfigurableExtensionFileFilterFileChooser
createAccessoryPanel, doInitializeFilters, getDefaultFileFilter, getEditor, getReader, getWriter, initGUI, initialize, setCorrectOpenFileFilter, setCorrectSaveFileFilter, setReader, setWriter, showOpenDialog, showSaveDialog, updateCurrentHandlerHook
-
Methods inherited from class adams.gui.chooser.AbstractExtensionFileFilterFileChooser
getDialogType, getFileMustExist, initializeFilters, isAllFilter, restoreLastFilter, setAcceptAllFileFilterUsed, setFileMustExist, showDialog
-
Methods inherited from class adams.gui.chooser.BaseFileChooser
accept, addChoosableFileFilter, checkFilter, findExistingDir, getAllowGlobFilters, getAutoAppendExtension, getCurrentPlaceholderDirectory, getDefaultAccessoryDimension, getDefaultExtension, getPromptOverwriteFile, getSelectedFiles, getSelectedPlaceholderFile, getSelectedPlaceholderFiles, handleException, hasCorrectExtension, isGlobFilter, isJComponent, setAutoAppendExtension, setCurrentDirectory, setDefaultExtension, setFileFilter, setPromptOverwriteFile, setSelectedFile, setSelectedFiles
-
Methods inherited from class javax.swing.JFileChooser
addActionListener, approveSelection, cancelSelection, changeToParentDirectory, createDialog, ensureFileIsVisible, fireActionPerformed, getAcceptAllFileFilter, getAccessibleContext, getAccessory, getActionListeners, getApproveButtonMnemonic, getApproveButtonText, getApproveButtonToolTipText, getChoosableFileFilters, getControlButtonsAreShown, getCurrentDirectory, getDescription, getDialogTitle, getDragEnabled, getFileFilter, getFileSelectionMode, getFileSystemView, getFileView, getIcon, getName, getSelectedFile, getTypeDescription, getUI, getUIClassID, isAcceptAllFileFilterUsed, isDirectorySelectionEnabled, isFileHidingEnabled, isFileSelectionEnabled, isMultiSelectionEnabled, isTraversable, paramString, removeActionListener, removeChoosableFileFilter, rescanCurrentDirectory, resetChoosableFileFilters, setAccessory, setApproveButtonMnemonic, setApproveButtonMnemonic, setApproveButtonText, setApproveButtonToolTipText, setControlButtonsAreShown, setDialogTitle, setDialogType, setDragEnabled, setFileHidingEnabled, setFileSelectionMode, setFileSystemView, setFileView, setMultiSelectionEnabled, setup, updateUI
-
Methods 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, 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, update
-
Methods inherited from class java.awt.Container
add, 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, validateTree
-
Methods 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, 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
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.gui.chooser.FileChooser
addActionListener, approveSelection, cancelSelection, changeToParentDirectory, ensureFileIsVisible, getAcceptAllFileFilter, getAccessory, getActionListeners, getApproveButtonMnemonic, getApproveButtonText, getApproveButtonToolTipText, getChoosableFileFilters, getControlButtonsAreShown, getCurrentDirectory, getDescription, getDialogTitle, getDragEnabled, getFileFilter, getFileSelectionMode, getFileSystemView, getFileView, getIcon, getName, getSelectedFile, getTypeDescription, isAcceptAllFileFilterUsed, isDirectorySelectionEnabled, isFileHidingEnabled, isFileSelectionEnabled, isMultiSelectionEnabled, isTraversable, removeActionListener, removeChoosableFileFilter, rescanCurrentDirectory, resetChoosableFileFilters, setAccessory, setApproveButtonMnemonic, setApproveButtonMnemonic, setApproveButtonText, setApproveButtonToolTipText, setControlButtonsAreShown, setDialogTitle, setDialogType, setDragEnabled, setFileHidingEnabled, setFileSelectionMode, setFileSystemView, setFileView, setMultiSelectionEnabled
-
-
-
-
Field Detail
-
m_ReaderFileFilters
protected static Hashtable<Class,List<ExtensionFileFilterWithClass>> m_ReaderFileFilters
the file filters for the readers.
-
m_WriterFileFilters
protected static Hashtable<Class,List<ExtensionFileFilterWithClass>> m_WriterFileFilters
the file filters for the writers.
-
-
Constructor Detail
-
AbstractReportFileChooser
protected AbstractReportFileChooser()
onstructs a FileChooser pointing to the user's default directory.
-
AbstractReportFileChooser
protected AbstractReportFileChooser(File currentDirectory)
Constructs a FileChooser using the given File as the path.- Parameters:
currentDirectory
- the path to start in
-
AbstractReportFileChooser
protected AbstractReportFileChooser(String currentDirectory)
Constructs a FileChooser using the given path.- Parameters:
currentDirectory
- the path to start in
-
-
Method Detail
-
initFilters
protected static void initFilters(AbstractReportFileChooser chooser, boolean reader, String[] classnames)
initializes the ReportFileExtensionFilters.- Parameters:
chooser
- the chooser instance to use as referencereader
- if true then the reader filters are initializedclassnames
- the classnames of the converters
-
getOpenFileFilters
protected List<ExtensionFileFilterWithClass> getOpenFileFilters()
Returns the file filters for opening files.- Specified by:
getOpenFileFilters
in classAbstractConfigurableExtensionFileFilterFileChooser<R extends AbstractReportReader,W extends AbstractReportWriter>
- Returns:
- the file filters
-
getSaveFileFilters
protected List<ExtensionFileFilterWithClass> getSaveFileFilters()
Returns the file filters for writing files.- Specified by:
getSaveFileFilters
in classAbstractConfigurableExtensionFileFilterFileChooser<R extends AbstractReportReader,W extends AbstractReportWriter>
- Returns:
- the file filters
-
getDefaultReader
protected abstract R getDefaultReader()
Returns the default reader.- Specified by:
getDefaultReader
in classAbstractConfigurableExtensionFileFilterFileChooser<R extends AbstractReportReader,W extends AbstractReportWriter>
- Returns:
- the default reader
-
getDefaultWriter
protected abstract W getDefaultWriter()
Returns the default writer.- Specified by:
getDefaultWriter
in classAbstractConfigurableExtensionFileFilterFileChooser<R extends AbstractReportReader,W extends AbstractReportWriter>
- Returns:
- the default writer
-
getReaderClass
protected Class getReaderClass()
Returns the reader superclass for the GOE.- Specified by:
getReaderClass
in classAbstractConfigurableExtensionFileFilterFileChooser<R extends AbstractReportReader,W extends AbstractReportWriter>
- Returns:
- the reader class
-
getWriterClass
protected Class getWriterClass()
Returns the writer superclass for the GOE.- Specified by:
getWriterClass
in classAbstractConfigurableExtensionFileFilterFileChooser<R extends AbstractReportReader,W extends AbstractReportWriter>
- Returns:
- the writer class
-
configureCurrentHandlerHook
protected void configureCurrentHandlerHook(int dialogType)
configures the current converter.- Overrides:
configureCurrentHandlerHook
in classAbstractConfigurableExtensionFileFilterFileChooser<R extends AbstractReportReader,W extends AbstractReportWriter>
- Parameters:
dialogType
- the type of dialog to configure for- See Also:
AbstractExtensionFileFilterFileChooser.m_CurrentHandler
-
getFiltersInitialized
protected boolean getFiltersInitialized()
Returns whether the filters have already been initialized.- Specified by:
getFiltersInitialized
in classAbstractConfigurableExtensionFileFilterFileChooser<R extends AbstractReportReader,W extends AbstractReportWriter>
- Returns:
- true if the filters have been initialized
-
setAllowGlobFilters
public void setAllowGlobFilters(boolean value)
Ignored.- Overrides:
setAllowGlobFilters
in classBaseFileChooser
- Parameters:
value
- ignored
-
-