1#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
7#![allow(
8 clippy::approx_constant,
9 clippy::type_complexity,
10 clippy::unreadable_literal,
11 clippy::upper_case_acronyms
12)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15use gio_sys as gio_unix;
16use glib_sys as glib;
17use gobject_sys as gobject;
18
19#[cfg(unix)]
20#[allow(unused_imports)]
21use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
22#[allow(unused_imports)]
23use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
24#[allow(unused_imports)]
25use std::ffi::{
26 c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
27};
28
29#[allow(unused_imports)]
30use glib::{gboolean, gconstpointer, gpointer, GType};
31
32pub const ASTAL_APPS_MAJOR_VERSION: c_int = 0;
34pub const ASTAL_APPS_MINOR_VERSION: c_int = 1;
35pub const ASTAL_APPS_MICRO_VERSION: c_int = 0;
36pub const ASTAL_APPS_VERSION: &[u8] = b"0.1.0\0";
37
38#[derive(Copy, Clone)]
40#[repr(C)]
41pub struct AstalAppsApplicationClass {
42 pub parent_class: gobject::GObjectClass,
43}
44
45impl ::std::fmt::Debug for AstalAppsApplicationClass {
46 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
47 f.debug_struct(&format!("AstalAppsApplicationClass @ {self:p}"))
48 .finish()
49 }
50}
51
52#[repr(C)]
53#[allow(dead_code)]
54pub struct _AstalAppsApplicationPrivate {
55 _data: [u8; 0],
56 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
57}
58
59pub type AstalAppsApplicationPrivate = _AstalAppsApplicationPrivate;
60
61#[derive(Copy, Clone)]
62#[repr(C)]
63pub struct AstalAppsAppsClass {
64 pub parent_class: gobject::GObjectClass,
65}
66
67impl ::std::fmt::Debug for AstalAppsAppsClass {
68 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
69 f.debug_struct(&format!("AstalAppsAppsClass @ {self:p}"))
70 .finish()
71 }
72}
73
74#[repr(C)]
75#[allow(dead_code)]
76pub struct _AstalAppsAppsPrivate {
77 _data: [u8; 0],
78 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
79}
80
81pub type AstalAppsAppsPrivate = _AstalAppsAppsPrivate;
82
83#[derive(Copy, Clone)]
84#[repr(C)]
85pub struct AstalAppsScore {
86 pub name: c_int,
87 pub entry: c_int,
88 pub executable: c_int,
89 pub description: c_int,
90 pub keywords: c_int,
91 pub categories: c_int,
92}
93
94impl ::std::fmt::Debug for AstalAppsScore {
95 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
96 f.debug_struct(&format!("AstalAppsScore @ {self:p}"))
97 .field("name", &self.name)
98 .field("entry", &self.entry)
99 .field("executable", &self.executable)
100 .field("description", &self.description)
101 .field("keywords", &self.keywords)
102 .field("categories", &self.categories)
103 .finish()
104 }
105}
106
107#[derive(Copy, Clone)]
109#[repr(C)]
110pub struct AstalAppsApplication {
111 pub parent_instance: gobject::GObject,
112 pub priv_: *mut AstalAppsApplicationPrivate,
113}
114
115impl ::std::fmt::Debug for AstalAppsApplication {
116 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
117 f.debug_struct(&format!("AstalAppsApplication @ {self:p}"))
118 .finish()
119 }
120}
121
122#[derive(Copy, Clone)]
123#[repr(C)]
124pub struct AstalAppsApps {
125 pub parent_instance: gobject::GObject,
126 pub priv_: *mut AstalAppsAppsPrivate,
127}
128
129impl ::std::fmt::Debug for AstalAppsApps {
130 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
131 f.debug_struct(&format!("AstalAppsApps @ {self:p}"))
132 .finish()
133 }
134}
135
136extern "C" {
137
138 pub fn astal_apps_score_get_type() -> GType;
142
143 pub fn astal_apps_application_get_type() -> GType;
147 pub fn astal_apps_application_get_key(
148 self_: *mut AstalAppsApplication,
149 key: *const c_char,
150 ) -> *mut c_char;
151 pub fn astal_apps_application_launch(self_: *mut AstalAppsApplication) -> gboolean;
152 pub fn astal_apps_application_fuzzy_match(
153 self_: *mut AstalAppsApplication,
154 term: *const c_char,
155 result: *mut AstalAppsScore,
156 );
157 pub fn astal_apps_application_exact_match(
158 self_: *mut AstalAppsApplication,
159 term: *const c_char,
160 result: *mut AstalAppsScore,
161 );
162 pub fn astal_apps_application_get_app(
163 self_: *mut AstalAppsApplication,
164 ) -> *mut gio_unix::GDesktopAppInfo;
165 pub fn astal_apps_application_set_app(
166 self_: *mut AstalAppsApplication,
167 value: *mut gio_unix::GDesktopAppInfo,
168 );
169 pub fn astal_apps_application_get_frequency(self_: *mut AstalAppsApplication) -> c_int;
170 pub fn astal_apps_application_set_frequency(self_: *mut AstalAppsApplication, value: c_int);
171 pub fn astal_apps_application_get_name(self_: *mut AstalAppsApplication) -> *const c_char;
172 pub fn astal_apps_application_get_entry(self_: *mut AstalAppsApplication) -> *const c_char;
173 pub fn astal_apps_application_get_description(
174 self_: *mut AstalAppsApplication,
175 ) -> *const c_char;
176 pub fn astal_apps_application_get_wm_class(self_: *mut AstalAppsApplication) -> *const c_char;
177 pub fn astal_apps_application_get_executable(self_: *mut AstalAppsApplication) -> *mut c_char;
178 pub fn astal_apps_application_get_icon_name(self_: *mut AstalAppsApplication) -> *mut c_char;
179 pub fn astal_apps_application_get_keywords(
180 self_: *mut AstalAppsApplication,
181 result_length1: *mut c_int,
182 ) -> *mut *mut c_char;
183 pub fn astal_apps_application_get_categories(
184 self_: *mut AstalAppsApplication,
185 result_length1: *mut c_int,
186 ) -> *mut *mut c_char;
187
188 pub fn astal_apps_apps_get_type() -> GType;
192 pub fn astal_apps_apps_fuzzy_score(
193 self_: *mut AstalAppsApps,
194 search: *const c_char,
195 a: *mut AstalAppsApplication,
196 ) -> c_double;
197 pub fn astal_apps_apps_exact_score(
198 self_: *mut AstalAppsApps,
199 search: *const c_char,
200 a: *mut AstalAppsApplication,
201 ) -> c_double;
202 pub fn astal_apps_apps_fuzzy_query(
203 self_: *mut AstalAppsApps,
204 search: *const c_char,
205 ) -> *mut glib::GList;
206 pub fn astal_apps_apps_exact_query(
207 self_: *mut AstalAppsApps,
208 search: *const c_char,
209 ) -> *mut glib::GList;
210 pub fn astal_apps_apps_reload(self_: *mut AstalAppsApps);
211 pub fn astal_apps_apps_new() -> *mut AstalAppsApps;
212 pub fn astal_apps_apps_get_show_hidden(self_: *mut AstalAppsApps) -> gboolean;
213 pub fn astal_apps_apps_set_show_hidden(self_: *mut AstalAppsApps, value: gboolean);
214 pub fn astal_apps_apps_get_list(self_: *mut AstalAppsApps) -> *mut glib::GList;
215 pub fn astal_apps_apps_get_min_score(self_: *mut AstalAppsApps) -> c_double;
216 pub fn astal_apps_apps_set_min_score(self_: *mut AstalAppsApps, value: c_double);
217 pub fn astal_apps_apps_get_name_multiplier(self_: *mut AstalAppsApps) -> c_double;
218 pub fn astal_apps_apps_set_name_multiplier(self_: *mut AstalAppsApps, value: c_double);
219 pub fn astal_apps_apps_get_entry_multiplier(self_: *mut AstalAppsApps) -> c_double;
220 pub fn astal_apps_apps_set_entry_multiplier(self_: *mut AstalAppsApps, value: c_double);
221 pub fn astal_apps_apps_get_executable_multiplier(self_: *mut AstalAppsApps) -> c_double;
222 pub fn astal_apps_apps_set_executable_multiplier(self_: *mut AstalAppsApps, value: c_double);
223 pub fn astal_apps_apps_get_description_multiplier(self_: *mut AstalAppsApps) -> c_double;
224 pub fn astal_apps_apps_set_description_multiplier(self_: *mut AstalAppsApps, value: c_double);
225 pub fn astal_apps_apps_get_keywords_multiplier(self_: *mut AstalAppsApps) -> c_double;
226 pub fn astal_apps_apps_set_keywords_multiplier(self_: *mut AstalAppsApps, value: c_double);
227 pub fn astal_apps_apps_get_categories_multiplier(self_: *mut AstalAppsApps) -> c_double;
228 pub fn astal_apps_apps_set_categories_multiplier(self_: *mut AstalAppsApps, value: c_double);
229
230}