Module java.desktop

Class BasicDirectoryModel

java.lang.Object
javax.swing.AbstractListModel<Object>
javax.swing.plaf.basic.BasicDirectoryModel
All Implemented Interfaces:
PropertyChangeListener, Serializable, EventListener, ListModel<Object>

public class BasicDirectoryModel extends AbstractListModel<Object> implements PropertyChangeListener
Basic implementation of a file list.
  • Constructor Details

    • BasicDirectoryModel

      public BasicDirectoryModel(JFileChooser filechooser)
      Constructs a new instance of BasicDirectoryModel.
      Parameters:
      filechooser - an instance of {JFileChooser}
  • Method Details

    • propertyChange

      public void propertyChange(PropertyChangeEvent e)
      Description copied from interface: PropertyChangeListener
      This method gets called when a bound property is changed.
      Specified by:
      propertyChange in interface PropertyChangeListener
      Parameters:
      e - A PropertyChangeEvent object describing the event source and the property that has changed.
    • invalidateFileCache

      public void invalidateFileCache()
      This method is used to interrupt file loading thread.
    • getDirectories

      public Vector<File> getDirectories()
      Returns a list of directories.
      Returns:
      a list of directories
    • getFiles

      public Vector<File> getFiles()
      Returns a list of files.
      Returns:
      a list of files
    • validateFileCache

      public void validateFileCache()
      Validates content of file cache.
    • renameFile

      public boolean renameFile(File oldFile, File newFile)
      Renames a file in the underlying file system.
      Parameters:
      oldFile - a File object representing the existing file
      newFile - a File object representing the desired new file name
      Returns:
      true if rename succeeded, otherwise false
      Since:
      1.4
    • fireContentsChanged

      public void fireContentsChanged()
      Invoked when a content is changed.
    • getSize

      public int getSize()
      Description copied from interface: ListModel
      Returns the length of the list.
      Specified by:
      getSize in interface ListModel<Object>
      Returns:
      the length of the list
    • contains

      public boolean contains(Object o)
      Returns true if an element o is in file cache, otherwise, returns false.
      Parameters:
      o - an element
      Returns:
      true if an element o is in file cache
    • indexOf

      public int indexOf(Object o)
      Returns an index of element o in file cache.
      Parameters:
      o - an element
      Returns:
      an index of element o in file cache
    • getElementAt

      public Object getElementAt(int index)
      Description copied from interface: ListModel
      Returns the value at the specified index.
      Specified by:
      getElementAt in interface ListModel<Object>
      Parameters:
      index - the requested index
      Returns:
      the value at index
    • intervalAdded

      @Deprecated(since="17", forRemoval=true) public void intervalAdded(ListDataEvent e)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Obsolete method, not used anymore.
      Obsolete - not used. This method is a no-op.
      Parameters:
      e - list data event
    • intervalRemoved

      @Deprecated(since="17", forRemoval=true) public void intervalRemoved(ListDataEvent e)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Obsolete method, not used anymore.
      Obsolete - not used. This method is a no-op.
      Parameters:
      e - list data event
    • sort

      protected void sort(Vector<? extends File> v)
      Sorts a list of files.
      Parameters:
      v - a list of files
    • lt

      @Deprecated(since="17", forRemoval=true) protected boolean lt(File a, File b)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Obsolete method, not used anymore.
      Obsolete - not used
      Parameters:
      a - a file
      b - another file
      Returns:
      a comparison of the file names
    • addPropertyChangeListener

      public void addPropertyChangeListener(PropertyChangeListener listener)
      Adds a PropertyChangeListener to the listener list. The listener is registered for all bound properties of this class.

      If listener is null, no exception is thrown and no action is performed.

      Parameters:
      listener - the property change listener to be added
      Since:
      1.6
      See Also:
    • removePropertyChangeListener

      public void removePropertyChangeListener(PropertyChangeListener listener)
      Removes a PropertyChangeListener from the listener list.

      If listener is null, no exception is thrown and no action is performed.

      Parameters:
      listener - the PropertyChangeListener to be removed
      Since:
      1.6
      See Also:
    • getPropertyChangeListeners

      public PropertyChangeListener[] getPropertyChangeListeners()
      Returns an array of all the property change listeners registered on this component.
      Returns:
      all of this component's PropertyChangeListeners or an empty array if no property change listeners are currently registered
      Since:
      1.6
      See Also:
    • firePropertyChange

      protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
      Support for reporting bound property changes for boolean properties. This method can be called when a bound property has changed and it will send the appropriate PropertyChangeEvent to any registered PropertyChangeListeners.
      Parameters:
      propertyName - the property whose value has changed
      oldValue - the property's previous value
      newValue - the property's new value
      Since:
      1.6