gtk-0.12.4: Binding to the Gtk+ graphical user interface library.

Portabilityportable (depends on GHC)
Stabilityprovisional
Maintainergtk2hs-users@lists.sourceforge.net
Safe HaskellNone

Graphics.UI.Gtk.Selectors.FileFilter

Contents

Description

A filter for selecting a file subset

  • Module available since Gtk+ version 2.4

Synopsis

Detail

A FileFilter can be used to restrict the files being shown in a FileChooser. Files can be filtered based on their name (with fileFilterAddPattern), on their mime type (with fileFilterAddMimeType), or by a custom filter function (with fileFilterAddCustom).

Filtering by mime types handles aliasing and subclassing of mime types; e.g. a filter for "text/plain" also matches a file with mime type "application/rtf", since "application/rtf" is a subclass of "text/plain". Note that FileFilter allows wildcards for the subtype of a mime type, so you can e.g. filter for "image/*".

Normally, filters are used by adding them to a FileChooser, see fileChooserAddFilter.

Class Hierarchy

 | GObject
 | +----Object
 | +----FileFilter

Types

Constructors

fileFilterNew :: IO FileFilterSource

Creates a new FileFilter with no rules added to it. Such a filter doesn't accept any files, so is not particularly useful until you add rules with fileFilterAddMimeType, fileFilterAddPattern, or fileFilterAddCustom.

Methods

fileFilterSetNameSource

Arguments

:: FileFilter 
-> String

name - the human-readable-name for the filter

-> IO () 

Sets the human-readable name of the filter; this is the string that will be displayed in the file selector user interface if there is a selectable list of filters.

fileFilterGetNameSource

Arguments

:: FileFilter 
-> IO String

returns The human-readable name of the filter

Gets the human-readable name for the filter. See fileFilterSetName.

fileFilterAddMimeTypeSource

Arguments

:: FileFilter 
-> String

mimeType - name of a MIME type

-> IO () 

Adds a rule allowing a given mime type to filter.

fileFilterAddPatternSource

Arguments

:: FileFilter 
-> String

pattern - a shell style glob

-> IO () 

Adds a rule allowing a shell style glob to a filter.

fileFilterAddCustomSource

Arguments

:: FileFilter 
-> [FileFilterFlags]

needed - list of flags indicating the information that the custom filter function needs.

-> (Maybe String -> Maybe String -> Maybe String -> Maybe String -> IO Bool)

(filename uri displayName mimeType -> ...) - filter function; if the function returns True, then the file will be displayed.

-> IO () 

Adds rule to a filter that allows files based on a custom callback function. The list of flags needed which is passed in provides information about what sorts of information that the filter function needs; this allows Gtk+ to avoid retrieving expensive information when it isn't needed by the filter.

fileFilterAddPixbufFormats :: FileFilter -> IO ()Source

Adds a rule allowing image files in the formats supported by Pixbuf.

  • Available since Gtk+ version 2.6

Attributes