Skip to main content

gtk/auto/
recent_filter.rs

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
5use crate::{Buildable, RecentFilterFlags, ffi};
6use glib::translate::*;
7
8glib::wrapper! {
9    #[doc(alias = "GtkRecentFilter")]
10    pub struct RecentFilter(Object<ffi::GtkRecentFilter>) @implements Buildable;
11
12    match fn {
13        type_ => || ffi::gtk_recent_filter_get_type(),
14    }
15}
16
17impl RecentFilter {
18    #[doc(alias = "gtk_recent_filter_new")]
19    pub fn new() -> RecentFilter {
20        assert_initialized_main_thread!();
21        unsafe { from_glib_none(ffi::gtk_recent_filter_new()) }
22    }
23
24    #[doc(alias = "gtk_recent_filter_add_age")]
25    pub fn add_age(&self, days: i32) {
26        unsafe {
27            ffi::gtk_recent_filter_add_age(self.to_glib_none().0, days);
28        }
29    }
30
31    #[doc(alias = "gtk_recent_filter_add_application")]
32    pub fn add_application(&self, application: &str) {
33        unsafe {
34            ffi::gtk_recent_filter_add_application(
35                self.to_glib_none().0,
36                application.to_glib_none().0,
37            );
38        }
39    }
40
41    //#[doc(alias = "gtk_recent_filter_add_custom")]
42    //pub fn add_custom(&self, needed: RecentFilterFlags, func: /*Unimplemented*/Fn(/*Ignored*/RecentFilterInfo) -> bool, data: /*Unimplemented*/Option<Basic: Pointer>) {
43    //    unsafe { TODO: call ffi:gtk_recent_filter_add_custom() }
44    //}
45
46    #[doc(alias = "gtk_recent_filter_add_group")]
47    pub fn add_group(&self, group: &str) {
48        unsafe {
49            ffi::gtk_recent_filter_add_group(self.to_glib_none().0, group.to_glib_none().0);
50        }
51    }
52
53    #[doc(alias = "gtk_recent_filter_add_mime_type")]
54    pub fn add_mime_type(&self, mime_type: &str) {
55        unsafe {
56            ffi::gtk_recent_filter_add_mime_type(self.to_glib_none().0, mime_type.to_glib_none().0);
57        }
58    }
59
60    #[doc(alias = "gtk_recent_filter_add_pattern")]
61    pub fn add_pattern(&self, pattern: &str) {
62        unsafe {
63            ffi::gtk_recent_filter_add_pattern(self.to_glib_none().0, pattern.to_glib_none().0);
64        }
65    }
66
67    #[doc(alias = "gtk_recent_filter_add_pixbuf_formats")]
68    pub fn add_pixbuf_formats(&self) {
69        unsafe {
70            ffi::gtk_recent_filter_add_pixbuf_formats(self.to_glib_none().0);
71        }
72    }
73
74    #[doc(alias = "gtk_recent_filter_get_name")]
75    #[doc(alias = "get_name")]
76    pub fn name(&self) -> Option<glib::GString> {
77        unsafe { from_glib_none(ffi::gtk_recent_filter_get_name(self.to_glib_none().0)) }
78    }
79
80    #[doc(alias = "gtk_recent_filter_get_needed")]
81    #[doc(alias = "get_needed")]
82    pub fn needed(&self) -> RecentFilterFlags {
83        unsafe { from_glib(ffi::gtk_recent_filter_get_needed(self.to_glib_none().0)) }
84    }
85
86    #[doc(alias = "gtk_recent_filter_set_name")]
87    pub fn set_name(&self, name: &str) {
88        unsafe {
89            ffi::gtk_recent_filter_set_name(self.to_glib_none().0, name.to_glib_none().0);
90        }
91    }
92}
93
94impl Default for RecentFilter {
95    fn default() -> Self {
96        Self::new()
97    }
98}