1 // This file was generated by gir (https://github.com/gtk-rs/gir)
2 // from gir-files (https://github.com/gtk-rs/gir-files)
3 // DO NOT EDIT
4 
5 use crate::Buildable;
6 use crate::FileFilterFlags;
7 use glib::translate::*;
8 use std::fmt;
9 
10 glib::wrapper! {
11     #[doc(alias = "GtkFileFilter")]
12     pub struct FileFilter(Object<ffi::GtkFileFilter>) @implements Buildable;
13 
14     match fn {
15         type_ => || ffi::gtk_file_filter_get_type(),
16     }
17 }
18 
19 impl FileFilter {
20     #[doc(alias = "gtk_file_filter_new")]
new() -> FileFilter21     pub fn new() -> FileFilter {
22         assert_initialized_main_thread!();
23         unsafe { from_glib_none(ffi::gtk_file_filter_new()) }
24     }
25 
26     #[cfg(any(feature = "v3_22", feature = "dox"))]
27     #[cfg_attr(feature = "dox", doc(cfg(feature = "v3_22")))]
28     #[doc(alias = "gtk_file_filter_new_from_gvariant")]
29     #[doc(alias = "new_from_gvariant")]
from_gvariant(variant: &glib::Variant) -> FileFilter30     pub fn from_gvariant(variant: &glib::Variant) -> FileFilter {
31         assert_initialized_main_thread!();
32         unsafe {
33             from_glib_full(ffi::gtk_file_filter_new_from_gvariant(
34                 variant.to_glib_none().0,
35             ))
36         }
37     }
38 
39     //#[doc(alias = "gtk_file_filter_add_custom")]
40     //pub fn add_custom(&self, needed: FileFilterFlags, func: /*Unimplemented*/Fn(/*Ignored*/FileFilterInfo) -> bool, data: /*Unimplemented*/Option<Fundamental: Pointer>) {
41     //    unsafe { TODO: call ffi:gtk_file_filter_add_custom() }
42     //}
43 
44     #[doc(alias = "gtk_file_filter_add_mime_type")]
add_mime_type(&self, mime_type: &str)45     pub fn add_mime_type(&self, mime_type: &str) {
46         unsafe {
47             ffi::gtk_file_filter_add_mime_type(self.to_glib_none().0, mime_type.to_glib_none().0);
48         }
49     }
50 
51     #[doc(alias = "gtk_file_filter_add_pattern")]
add_pattern(&self, pattern: &str)52     pub fn add_pattern(&self, pattern: &str) {
53         unsafe {
54             ffi::gtk_file_filter_add_pattern(self.to_glib_none().0, pattern.to_glib_none().0);
55         }
56     }
57 
58     #[doc(alias = "gtk_file_filter_add_pixbuf_formats")]
add_pixbuf_formats(&self)59     pub fn add_pixbuf_formats(&self) {
60         unsafe {
61             ffi::gtk_file_filter_add_pixbuf_formats(self.to_glib_none().0);
62         }
63     }
64 
65     //#[doc(alias = "gtk_file_filter_filter")]
66     //pub fn filter(&self, filter_info: /*Ignored*/&FileFilterInfo) -> bool {
67     //    unsafe { TODO: call ffi:gtk_file_filter_filter() }
68     //}
69 
70     #[doc(alias = "gtk_file_filter_get_name")]
71     #[doc(alias = "get_name")]
name(&self) -> Option<glib::GString>72     pub fn name(&self) -> Option<glib::GString> {
73         unsafe { from_glib_none(ffi::gtk_file_filter_get_name(self.to_glib_none().0)) }
74     }
75 
76     #[doc(alias = "gtk_file_filter_get_needed")]
77     #[doc(alias = "get_needed")]
needed(&self) -> FileFilterFlags78     pub fn needed(&self) -> FileFilterFlags {
79         unsafe { from_glib(ffi::gtk_file_filter_get_needed(self.to_glib_none().0)) }
80     }
81 
82     #[doc(alias = "gtk_file_filter_set_name")]
set_name(&self, name: Option<&str>)83     pub fn set_name(&self, name: Option<&str>) {
84         unsafe {
85             ffi::gtk_file_filter_set_name(self.to_glib_none().0, name.to_glib_none().0);
86         }
87     }
88 
89     #[cfg(any(feature = "v3_22", feature = "dox"))]
90     #[cfg_attr(feature = "dox", doc(cfg(feature = "v3_22")))]
91     #[doc(alias = "gtk_file_filter_to_gvariant")]
to_gvariant(&self) -> Option<glib::Variant>92     pub fn to_gvariant(&self) -> Option<glib::Variant> {
93         unsafe { from_glib_none(ffi::gtk_file_filter_to_gvariant(self.to_glib_none().0)) }
94     }
95 }
96 
97 impl Default for FileFilter {
default() -> Self98     fn default() -> Self {
99         Self::new()
100     }
101 }
102 
103 impl fmt::Display for FileFilter {
fmt(&self, f: &mut fmt::Formatter) -> fmt::Result104     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
105         f.write_str("FileFilter")
106     }
107 }
108