Package weka.gui

Class ConverterFileChooser

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

    public class ConverterFileChooser
    extends javax.swing.JFileChooser
    A specialized JFileChooser that lists all available file Loaders and Savers. To list only savers that can handle the data that is about to be saved, one can set a Capabilities filter.
    Version:
    $Revision: 7464 $
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    setCapabilitiesFilter(Capabilities), Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.BaselineResizeBehavior
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int LOADER_DIALOG
      the loader dialog
      static int SAVER_DIALOG
      the saver dialog
      static int UNHANDLED_DIALOG
      unhandled type of dialog
      • Fields inherited from class javax.swing.JFileChooser

        ACCEPT_ALL_FILE_FILTER_USED_CHANGED_PROPERTY, 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

        TOOL_TIP_TEXT_KEY, 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 
      Constructor Description
      ConverterFileChooser()
      onstructs a FileChooser pointing to the user's default directory.
      ConverterFileChooser​(java.io.File currentDirectory)
      Constructs a FileChooser using the given File as the path.
      ConverterFileChooser​(java.lang.String currentDirectory)
      Constructs a FileChooser using the given path.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Capabilities getCapabilitiesFilter()
      returns the capabilities filter for the savers, can be null if all are listed.
      boolean getCoreConvertersOnly()
      Returns whether only the hardcoded core converters are displayed.
      boolean getFileMustExist()
      Returns whether the selected file must exist (only open dialog).
      AbstractFileLoader getLoader()
      returns the loader that was chosen by the user, can be null in case the user aborted the dialog or the save dialog was shown
      boolean getOverwriteWarning()
      Returns whether a popup appears with a warning that the file already exists (only save dialog).
      AbstractFileSaver getSaver()
      returns the saver that was chosen by the user, can be null in case the user aborted the dialog or the open dialog was shown
      static void main​(java.lang.String[] args)
      For testing the file chooser
      void setCapabilitiesFilter​(Capabilities value)
      sets the capabilities that the savers must have.
      void setCoreConvertersOnly​(boolean value)
      Whether to display only the hardocded core converters.
      void setFileMustExist​(boolean value)
      Whether the selected file must exst (only open dialog).
      void setOverwriteWarning​(boolean value)
      Whether a warning is popped up if the file that is to be saved already exists (only save dialog).
      int showDialog​(java.awt.Component parent, java.lang.String approveButtonText)
      Pops a custom file chooser dialog with a custom approve button.
      int showOpenDialog​(java.awt.Component parent)
      Pops up an "Open File" file chooser dialog.
      int showSaveDialog​(java.awt.Component parent)
      Pops up an "Save File" file chooser dialog.
      • Methods inherited from class javax.swing.JFileChooser

        accept, addActionListener, addChoosableFileFilter, approveSelection, cancelSelection, changeToParentDirectory, ensureFileIsVisible, 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, removeActionListener, removeChoosableFileFilter, rescanCurrentDirectory, resetChoosableFileFilters, setAcceptAllFileFilterUsed, setAccessory, setApproveButtonMnemonic, setApproveButtonMnemonic, setApproveButtonText, setApproveButtonToolTipText, setControlButtonsAreShown, setCurrentDirectory, setDialogTitle, setDialogType, setDragEnabled, setFileFilter, setFileHidingEnabled, setFileSelectionMode, setFileSystemView, setFileView, setMultiSelectionEnabled, setSelectedFile, setSelectedFiles, updateUI
      • Methods inherited from class javax.swing.JComponent

        addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, 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, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, 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, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate
      • Methods inherited from class java.awt.Component

        action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, 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

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • ConverterFileChooser

        public ConverterFileChooser()
        onstructs a FileChooser pointing to the user's default directory.
      • ConverterFileChooser

        public ConverterFileChooser​(java.io.File currentDirectory)
        Constructs a FileChooser using the given File as the path.
        Parameters:
        currentDirectory - the path to start in
      • ConverterFileChooser

        public ConverterFileChooser​(java.lang.String currentDirectory)
        Constructs a FileChooser using the given path.
        Parameters:
        currentDirectory - the path to start in
    • Method Detail

      • setCapabilitiesFilter

        public void setCapabilitiesFilter​(Capabilities value)
        sets the capabilities that the savers must have. use null if all should be listed.
        Parameters:
        value - the minimum Capabilities the savers must have
      • getCapabilitiesFilter

        public Capabilities getCapabilitiesFilter()
        returns the capabilities filter for the savers, can be null if all are listed.
        Returns:
        the minimum Capabilities the savers must have
      • setOverwriteWarning

        public void setOverwriteWarning​(boolean value)
        Whether a warning is popped up if the file that is to be saved already exists (only save dialog).
        Parameters:
        value - if true a warning will be popup
      • getOverwriteWarning

        public boolean getOverwriteWarning()
        Returns whether a popup appears with a warning that the file already exists (only save dialog).
        Returns:
        true if a warning pops up
      • setFileMustExist

        public void setFileMustExist​(boolean value)
        Whether the selected file must exst (only open dialog).
        Parameters:
        value - if true the file must exist
      • getFileMustExist

        public boolean getFileMustExist()
        Returns whether the selected file must exist (only open dialog).
        Returns:
        true if the file must exist
      • setCoreConvertersOnly

        public void setCoreConvertersOnly​(boolean value)
        Whether to display only the hardocded core converters. Necessary for RMI/Remote Experiments (dynamic class discovery doesn't work there!).
        Parameters:
        value - if true only the core converters will be displayed
        See Also:
        m_CoreConvertersOnly
      • getCoreConvertersOnly

        public boolean getCoreConvertersOnly()
        Returns whether only the hardcoded core converters are displayed. Necessary for RMI/REmote Experiments (dynamic class discovery doesn't work there!).
        Returns:
        true if the file must exist
        See Also:
        m_CoreConvertersOnly
      • showDialog

        public int showDialog​(java.awt.Component parent,
                              java.lang.String approveButtonText)
        Pops a custom file chooser dialog with a custom approve button. Throws an exception, if the dialog type is UNHANDLED_DIALOG.
        Overrides:
        showDialog in class javax.swing.JFileChooser
        Parameters:
        parent - the parent of this dialog
        approveButtonText - the text for the OK button
        Returns:
        the user's action
      • showOpenDialog

        public int showOpenDialog​(java.awt.Component parent)
        Pops up an "Open File" file chooser dialog.
        Overrides:
        showOpenDialog in class javax.swing.JFileChooser
        Parameters:
        parent - the parent of this file chooser
        Returns:
        the result of the user's action
      • showSaveDialog

        public int showSaveDialog​(java.awt.Component parent)
        Pops up an "Save File" file chooser dialog.
        Overrides:
        showSaveDialog in class javax.swing.JFileChooser
        Parameters:
        parent - the parent of this file chooser
        Returns:
        the result of the user's action
      • getLoader

        public AbstractFileLoader getLoader()
        returns the loader that was chosen by the user, can be null in case the user aborted the dialog or the save dialog was shown
        Returns:
        the chosen loader, if any
      • getSaver

        public AbstractFileSaver getSaver()
        returns the saver that was chosen by the user, can be null in case the user aborted the dialog or the open dialog was shown
        Returns:
        the chosen saver, if any
      • main

        public static void main​(java.lang.String[] args)
                         throws java.lang.Exception
        For testing the file chooser
        Parameters:
        args - the commandline options - ignored
        Throws:
        java.lang.Exception - if something goes wrong with loading/saving