Graphics.UI.Gtk.Recent.RecentFilter

gtk3-0.14.2: Binding to the Gtk+ 3 graphical user interface library

Maintainer | gtk2hs-users@lists.sourceforge.net
Stability | provisional
Portability | portable (depends on GHC)
Safe Haskell | None
Language | Haskell98

Graphics.UI.Gtk.Recent.RecentFilter

Contents

- Detail
- Class Hierarchy
- Types
- Enums
- Constructors
- Methods

Description

A filter for selecting a subset of recently used files

- Module available since Gtk+ version 2.10

Synopsis

- data RecentFilter
- class GObjectClass o => RecentFilterClass o
- castToRecentFilter :: GObjectClass obj => obj -> RecentFilter
- toRecentFilter :: RecentFilterClass o => o -> RecentFilter
- data RecentFilterFlags
  - = RecentFilterUri
  - | RecentFilterDisplayName
  - | RecentFilterMimeType
  - | RecentFilterApplication
  - | RecentFilterGroup
  - | RecentFilterAge
- recentFilterNew :: IO RecentFilter
- recentFilterGetName :: (RecentFilterClass self, GlibString string) => self -> IO string
- recentFilterSetName :: (RecentFilterClass self, GlibString string) => self -> string -> IO ()
- recentFilterAddMimeType :: (RecentFilterClass self, GlibString string) => self -> string -> IO ()
- recentFilterAddPattern :: (RecentFilterClass self, GlibString string) => self -> string -> IO ()
- recentFilterAddPixbufFormats :: RecentFilterClass self => self -> IO ()
- recentFilterAddApplication :: (RecentFilterClass self, GlibString string) => self -> string -> IO ()
- recentFilterAddGroup :: (RecentFilterClass self, GlibString string) => self -> string -> IO ()
- recentFilterAddAge :: RecentFilterClass self => self -> Int -> IO ()

# Detail

A `RecentFilter` can be used to restrict the files being shown in a `RecentChooser`. Files can be filtered based on their name (with `recentFilterAddPattern`), on their mime type (with `fileFilterAddMimeType`), on the application that has registered them (with `recentFilterAddApplication`), or by a custom filter function (with `recentFilterAddCustom`).

Filtering by mime type 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 `RecentFilter` 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 `RecentChooser`, see `recentChooserAddFilter`, but it is also possible to manually use a filter on a file with `recentFilterFilter`.

Recently used files are supported since Gtk+ 2.10.

# Class Hierarchy

    | GObject
    | +----Object
    | +----RecentFilter

# Types

data RecentFilter

Instances

Eq RecentFilter |
Ord RecentFilter |
GObjectClass RecentFilter |
RecentFilterClass RecentFilter |

class GObjectClass o => RecentFilterClass o

Instances

RecentFilterClass RecentFilter |

castToRecentFilter :: GObjectClass obj => obj -> RecentFilter

toRecentFilter :: RecentFilterClass o => o -> RecentFilter

# Enums

data RecentFilterFlags

These flags indicate what parts of a `RecentFilterInfo` struct are filled or need to be filled.

Constructors

RecentFilterUri |
RecentFilterDisplayName |
RecentFilterMimeType |
RecentFilterApplication |
RecentFilterGroup |
RecentFilterAge |

Instances

Bounded RecentFilterFlags |
Enum RecentFilterFlags | Creates a new `RecentFilter` with no rules added to it. Such filter does not accept any recently used resources, so is not particularly useful until you add rules with `recentFilterAddPattern`, `recentFilterAddMimeType`, `recentFilterAddApplication`, `recentFilterAddAge`. To create a filter that accepts any recently used resource, use:
    filter <- recentFilterNew
    recentFilterAddPattern filter "*"
Available since Gtk+ version 2.10
Eq RecentFilterFlags |
Show RecentFilterFlags |

# Constructors

recentFilterNew :: IO RecentFilter

# Methods

recentFilterGetName

Arguments

:: (RecentFilterClass self, GlibString string) |
=> self |
-> IO string | returns the name of the filter

Gets the human-readable name for the filter. See `recentFilterSetName`.

- Available since Gtk+ version 2.10

recentFilterSetName

Arguments

:: (RecentFilterClass self, GlibString string) |
=> self |
-> string | `name` - then human readable name of `filter`
-> IO () |

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

- Available since Gtk+ version 2.10

recentFilterAddMimeType

Arguments

:: (RecentFilterClass self, GlibString string) |
=> self |
-> string | `mimeType` - a MIME type
-> IO () |

Adds a rule that allows resources based on their registered MIME type.

- Available since Gtk+ version 2.10

recentFilterAddPattern

Arguments

:: (RecentFilterClass self, GlibString string) |
=> self |
-> string | `pattern` - a file pattern
-> IO () |

Adds a rule that allows resources based on a pattern matching their display name.

- Available since Gtk+ version 2.10

recentFilterAddPixbufFormats :: RecentFilterClass self => self -> IO ()

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

recentFilterAddApplication

Arguments

:: (RecentFilterClass self, GlibString string) |
=> self |
-> string | `application` - an application name
-> IO () |

Adds a rule that allows resources based on the name of the application that has registered them.

- Available since Gtk+ version 2.10

recentFilterAddGroup

Arguments

:: (RecentFilterClass self, GlibString string) |
=> self |
-> string | `group` - a group name
-> IO () |

Adds a rule that allows resources based on the name of the group to which they belong

- Available since Gtk+ version 2.10

recentFilterAddAge

Arguments

:: RecentFilterClass self |
=> self |
-> Int | `days` - number of days
-> IO () |

Adds a rule that allows resources based on their age - that is, the number of days elapsed since they were last modified.

- Available since Gtk+ version 2.10