Graphics.UI.Gtk.Recent.RecentFilter

gtk3-0.14.5: 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 # |
Methods (==) :: RecentFilter -> RecentFilter -> Bool # (/=) :: RecentFilter -> RecentFilter -> Bool #
Ord RecentFilter # |
Methods compare :: RecentFilter -> RecentFilter -> Ordering # (<) :: RecentFilter -> RecentFilter -> Bool # (<=) :: RecentFilter -> RecentFilter -> Bool # (>) :: RecentFilter -> RecentFilter -> Bool # (>=) :: RecentFilter -> RecentFilter -> Bool # max :: RecentFilter -> RecentFilter -> RecentFilter # min :: RecentFilter -> RecentFilter -> RecentFilter #
GObjectClass RecentFilter # |
Methods toGObject :: RecentFilter -> GObject # unsafeCastGObject :: GObject -> 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 # |
Methods minBound :: RecentFilterFlags # maxBound :: 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
Methods succ :: RecentFilterFlags -> RecentFilterFlags # pred :: RecentFilterFlags -> RecentFilterFlags # toEnum :: Int -> RecentFilterFlags # fromEnum :: RecentFilterFlags -> Int # enumFrom :: RecentFilterFlags -> [RecentFilterFlags] # enumFromThen :: RecentFilterFlags -> RecentFilterFlags -> [RecentFilterFlags] # enumFromTo :: RecentFilterFlags -> RecentFilterFlags -> [RecentFilterFlags] # enumFromThenTo :: RecentFilterFlags -> RecentFilterFlags -> RecentFilterFlags -> [RecentFilterFlags] #
Eq RecentFilterFlags # |
Methods (==) :: RecentFilterFlags -> RecentFilterFlags -> Bool # (/=) :: RecentFilterFlags -> RecentFilterFlags -> Bool #
Show RecentFilterFlags # |
Methods showsPrec :: Int -> RecentFilterFlags -> ShowS # show :: RecentFilterFlags -> String # showList :: [RecentFilterFlags] -> ShowS #

# 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