FileFilter
open class FileFilter : Filter, FileFilterProtocol
GtkFileFilter filters files by name or mime type.
GtkFileFilter can be used to restrict the files being shown in a
GtkFileChooser. Files can be filtered based on their name (with
[methodGtk.FileFilter.add_pattern] or [methodGtk.FileFilter.add_suffix])
or on their mime type (with [methodGtk.FileFilter.add_mime_type]).
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 GtkFileFilter allows wildcards for the
subtype of a mime type, so you can e.g. filter for image/*.
Normally, file filters are used by adding them to a GtkFileChooser
(see [methodGtk.FileChooser.add_filter]), but it is also possible to
manually use a file filter on any [classGtk.FilterListModel] containing
GFileInfo objects.
GtkFileFilter as GtkBuildable
The GtkFileFilter implementation of the GtkBuildable interface
supports adding rules using the <mime-types> and <patterns> and
<suffixes> elements and listing the rules within. Specifying a
<mime-type> or <pattern> or <suffix> has the same effect as
as calling
[methodGtk.FileFilter.add_mime_type] or
[methodGtk.FileFilter.add_pattern] or
[methodGtk.FileFilter.add_suffix].
An example of a UI definition fragment specifying GtkFileFilter
rules:
<object class="GtkFileFilter">
<property name="name" translatable="yes">Text and Images</property>
<mime-types>
<mime-type>text/plain</mime-type>
<mime-type>image/ *</mime-type>
</mime-types>
<patterns>
<pattern>*.txt</pattern>
</patterns>
<suffixes>
<suffix>png</suffix>
</suffixes>
</object>
The FileFilter type acts as a reference-counted owner of an underlying GtkFileFilter instance.
It provides the methods that can operate on this data type through FileFilterProtocol conformance.
Use FileFilter as a strong reference or owner of a GtkFileFilter instance.
-
Designated initialiser from the underlying `C` data type.This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the
FileFilterinstance.Declaration
Swift
@inlinable public init(_ op: UnsafeMutablePointer<GtkFileFilter>)Parameters
oppointer to the underlying object
-
Designated initialiser from a constant pointer to the underlying
Cdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theFileFilterinstance.Declaration
Swift
@inlinable public init(_ op: UnsafePointer<GtkFileFilter>)Parameters
oppointer to the underlying object
-
Optional initialiser from a non-mutating
gpointerto the underlyingCdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theFileFilterinstance.Declaration
Swift
@inlinable override public init!(gpointer op: gpointer?)Parameters
opgpointer to the underlying object
-
Optional initialiser from a non-mutating
gconstpointerto the underlyingCdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theFileFilterinstance.Declaration
Swift
@inlinable override public init!(gconstpointer op: gconstpointer?)Parameters
oppointer to the underlying object
-
Optional initialiser from a constant pointer to the underlying
Cdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theFileFilterinstance.Declaration
Swift
@inlinable public init!(_ op: UnsafePointer<GtkFileFilter>?)Parameters
oppointer to the underlying object
-
Optional initialiser from the underlying
Cdata type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to theFileFilterinstance.Declaration
Swift
@inlinable public init!(_ op: UnsafeMutablePointer<GtkFileFilter>?)Parameters
oppointer to the underlying object
-
Designated initialiser from the underlying
Cdata type. Will retainGtkFileFilter. i.e., ownership is transferred to theFileFilterinstance.Declaration
Swift
@inlinable public init(retaining op: UnsafeMutablePointer<GtkFileFilter>)Parameters
oppointer to the underlying object
-
Reference intialiser for a related type that implements
FileFilterProtocolWill retainGtkFileFilter.Declaration
Swift
@inlinable public init<T>(fileFilter other: T) where T : FileFilterProtocolParameters
otheran instance of a related type that implements
FileFilterProtocol -
Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
FileFilterProtocol.Declaration
Swift
@inlinable override public init<T>(cPointer p: UnsafeMutablePointer<T>)Parameters
cPointerpointer to the underlying object
-
Unsafe typed, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
FileFilterProtocol.Declaration
Swift
@inlinable override public init<T>(retainingCPointer cPointer: UnsafeMutablePointer<T>)Parameters
cPointerpointer to the underlying object
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
FileFilterProtocol.Declaration
Swift
@inlinable override public init(raw p: UnsafeRawPointer)Parameters
praw pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
FileFilterProtocol.Declaration
Swift
@inlinable override public init(retainingRaw raw: UnsafeRawPointer) -
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
FileFilterProtocol.Declaration
Swift
@inlinable public required init(raw p: UnsafeMutableRawPointer)Parameters
pmutable raw pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
FileFilterProtocol.Declaration
Swift
@inlinable required public init(retainingRaw raw: UnsafeMutableRawPointer)Parameters
rawmutable raw pointer to the underlying object
-
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
FileFilterProtocol.Declaration
Swift
@inlinable override public init(opaquePointer p: OpaquePointer)Parameters
popaque pointer to the underlying object
-
Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
FileFilterProtocol.Declaration
Swift
@inlinable override public init(retainingOpaquePointer p: OpaquePointer)Parameters
popaque pointer to the underlying object
-
Creates a new
GtkFileFilterwith no rules added to it.Such a filter doesn’t accept any files, so is not particularly useful until you add rules with [method
Gtk.FileFilter.add_mime_type], [methodGtk.FileFilter.add_pattern], [methodGtk.FileFilter.add_suffix] or [methodGtk.FileFilter.add_pixbuf_formats].To create a filter that accepts any file, use:
GtkFileFilter *filter = gtk_file_filter_new (); gtk_file_filter_add_pattern (filter, "*");Declaration
Swift
@inlinable public init() -
Deserialize a file filter from a
GVariant.The variant must be in the format produced by [method
Gtk.FileFilter.to_gvariant].Declaration
Swift
@inlinable public init<VariantT>(gvariant variant: VariantT) where VariantT : VariantProtocol -
Deserialize a file filter from a
GVariant.The variant must be in the format produced by [method
Gtk.FileFilter.to_gvariant].Declaration
Swift
@inlinable public static func newFromG<VariantT>(gvariant variant: VariantT) -> FileFilter! where VariantT : VariantProtocol
View on GitHub
Install in Dash
FileFilter Class Reference