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 adw_sys as adw;
16use gio_sys as gio;
17use glib_sys as glib;
18use gobject_sys as gobject;
19use gtk_sys as gtk;
20
21#[allow(unused_imports)]
22use libc::{FILE, intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t};
23#[cfg(unix)]
24#[allow(unused_imports)]
25use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
26#[allow(unused_imports)]
27use std::ffi::{
28 c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
29};
30
31#[allow(unused_imports)]
32use glib::{GType, gboolean, gconstpointer, gpointer};
33
34#[derive(Copy, Clone)]
36#[repr(C)]
37pub struct MsOskAddLayoutDialogClass {
38 pub parent_class: adw::AdwDialogClass,
39}
40
41impl ::std::fmt::Debug for MsOskAddLayoutDialogClass {
42 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
43 f.debug_struct(&format!("MsOskAddLayoutDialogClass @ {self:p}"))
44 .field("parent_class", &self.parent_class)
45 .finish()
46 }
47}
48
49#[derive(Copy, Clone)]
50#[repr(C)]
51pub struct MsOskLayoutClass {
52 pub parent_class: gobject::GObjectClass,
53}
54
55impl ::std::fmt::Debug for MsOskLayoutClass {
56 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
57 f.debug_struct(&format!("MsOskLayoutClass @ {self:p}"))
58 .field("parent_class", &self.parent_class)
59 .finish()
60 }
61}
62
63#[derive(Copy, Clone)]
64#[repr(C)]
65pub struct MsOskLayoutPrefsClass {
66 pub parent_class: adw::AdwPreferencesGroupClass,
67}
68
69impl ::std::fmt::Debug for MsOskLayoutPrefsClass {
70 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
71 f.debug_struct(&format!("MsOskLayoutPrefsClass @ {self:p}"))
72 .field("parent_class", &self.parent_class)
73 .finish()
74 }
75}
76
77#[repr(C)]
79#[allow(dead_code)]
80pub struct MsOskAddLayoutDialog {
81 _data: [u8; 0],
82 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
83}
84
85impl ::std::fmt::Debug for MsOskAddLayoutDialog {
86 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
87 f.debug_struct(&format!("MsOskAddLayoutDialog @ {self:p}"))
88 .finish()
89 }
90}
91
92#[repr(C)]
93#[allow(dead_code)]
94pub struct MsOskLayout {
95 _data: [u8; 0],
96 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
97}
98
99impl ::std::fmt::Debug for MsOskLayout {
100 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
101 f.debug_struct(&format!("MsOskLayout @ {self:p}")).finish()
102 }
103}
104
105#[repr(C)]
106#[allow(dead_code)]
107pub struct MsOskLayoutPrefs {
108 _data: [u8; 0],
109 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
110}
111
112impl ::std::fmt::Debug for MsOskLayoutPrefs {
113 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
114 f.debug_struct(&format!("MsOskLayoutPrefs @ {self:p}"))
115 .finish()
116 }
117}
118
119unsafe extern "C" {
120
121 pub fn ms_osk_add_layout_dialog_get_type() -> GType;
125 pub fn ms_osk_add_layout_dialog_new(layouts: *mut gio::GListModel) -> *mut gtk::GtkWidget;
126
127 pub fn ms_osk_layout_get_type() -> GType;
131 pub fn ms_osk_layout_new(
132 name: *const c_char,
133 type_: *const c_char,
134 id: *const c_char,
135 ) -> *mut MsOskLayout;
136 pub fn ms_osk_layout_get_id(self_: *mut MsOskLayout) -> *const c_char;
137 pub fn ms_osk_layout_get_name(self_: *mut MsOskLayout) -> *const c_char;
138 pub fn ms_osk_layout_get_type_(self_: *mut MsOskLayout) -> *const c_char;
139
140 pub fn ms_osk_layout_prefs_get_type() -> GType;
144 pub fn ms_osk_layout_prefs_new() -> *mut MsOskLayoutPrefs;
145 pub fn ms_osk_layout_prefs_load_osk_layouts(self_: *mut MsOskLayoutPrefs);
146
147 pub fn ms_init();
151
152}