Class ExtensionFileFilter

  • All Implemented Interfaces:
    GhidraFileFilter

    public class ExtensionFileFilter
    extends java.lang.Object
    implements GhidraFileFilter
    A convenience implementation of FileFilter that filters out all files except for those type extensions that it knows about. Extensions are of the type ".foo", which is typically found on Windows and Unix boxes, but not on Mac. Case is ignored. Example - create a new filter that filters out all files but gif and jpg image files:
         GhidraFileChooser chooser = new GhidraFileChooser();
         ExtensionFileFilter filter = new ExtensionFileFilter(
                       new String{"gif", "jpg"}, "JPEG & GIF Images")
         chooser.addFileFilter(filter);
    
    • Constructor Summary

      Constructors 
      Constructor Description
      ExtensionFileFilter​(java.lang.String[] filters, java.lang.String description)
      Creates a file filter from the given string array and description.
      ExtensionFileFilter​(java.lang.String extension, java.lang.String description)
      Creates a file filter that accepts the given file type.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean accept​(java.io.File f, GhidraFileChooserModel model)
      Return true if this file should be shown in the directory pane, false if it shouldn't.
      void addExtension​(java.lang.String extension)
      Adds a filetype "dot" extension to filter against.
      static ExtensionFileFilter forExtensions​(java.lang.String description, java.lang.String... exts)
      Creates a ExtensionFileFilter in a varargs friendly way.
      java.lang.String getDescription()
      Returns the human readable description of this filter.
      java.lang.String getExtension​(java.io.File f)
      Return the extension portion of the file's name .
      boolean isExtensionListInDescription()
      Returns whether the extension list (.jpg, .gif, etc) should show up in the human readable description.
      void setDescription​(java.lang.String description)
      Sets the human readable description of this filter.
      void setExtensionListInDescription​(boolean b)
      Determines whether the extension list (.jpg, .gif, etc) should show up in the human readable description.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ExtensionFileFilter

        public ExtensionFileFilter​(java.lang.String extension,
                                   java.lang.String description)
        Creates a file filter that accepts the given file type. Example: new ExtensionFileFilter("jpg", "JPEG Image Images"); Note that the "." before the extension is not needed. If provided, it will be ignored.
        See Also:
        addExtension(java.lang.String)
      • ExtensionFileFilter

        public ExtensionFileFilter​(java.lang.String[] filters,
                                   java.lang.String description)
        Creates a file filter from the given string array and description. Example: new ExtensionFileFilter(String {"gif", "jpg"}, "Gif and JPG Images"); Note that the "." before the extension is not needed and will be ignored.
        See Also:
        addExtension(java.lang.String)
    • Method Detail

      • forExtensions

        public static ExtensionFileFilter forExtensions​(java.lang.String description,
                                                        java.lang.String... exts)
        Creates a ExtensionFileFilter in a varargs friendly way.
        Parameters:
        description - String description of this set of file extensions.
        exts - variable length list of file extensions, without leading dot.
        Returns:
        new ExtensionFileFilter instance.
      • accept

        public boolean accept​(java.io.File f,
                              GhidraFileChooserModel model)
        Return true if this file should be shown in the directory pane, false if it shouldn't. Files that begin with "." are ignored.
        Specified by:
        accept in interface GhidraFileFilter
        Parameters:
        f - The abstract pathname to be tested
        model - The underlying file chooser model
        Returns:
        true if and only if pathname should be included
        See Also:
        getExtension(java.io.File), FileFilter.accept(java.io.File)
      • getExtension

        public java.lang.String getExtension​(java.io.File f)
        Return the extension portion of the file's name .
        See Also:
        getExtension(java.io.File), FileFilter.accept(java.io.File)
      • addExtension

        public void addExtension​(java.lang.String extension)
        Adds a filetype "dot" extension to filter against. For example: the following code will create a filter that filters out all files except those that end in ".jpg" and ".tif": ExtensionFileFilter filter = new ExtensionFileFilter(); filter.addExtension("jpg"); filter.addExtension("tif"); Note that the "." before the extension is not needed and will be ignored.
      • getDescription

        public java.lang.String getDescription()
        Returns the human readable description of this filter. For example: "JPEG and GIF Image Files (*.jpg, *.gif)"
        Specified by:
        getDescription in interface GhidraFileFilter
        Returns:
        the description of this filter