1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
extern crate libc;
extern crate glib_sys as glib_ffi;
pub use glib_ffi as ffi;
use libc::c_char;
pub use self::app_info::AppInfo;
pub use self::list::{List, Elem, RevElem};
pub use self::slist::{SList, SElem};
pub use self::glib_container::GlibContainer;
pub use self::error::{Error};
pub use self::permission::Permission;
pub use self::source::{Continue, idle_add, timeout_add, timeout_add_seconds};
pub use self::traits::FFIGObject;
pub use self::value::{Value, ValuePublic};
pub use types::Type;
pub use self::date::{TimeVal, Time, Date, Year, Month, Weekday, Day};
mod app_info;
mod list;
mod slist;
pub mod glib_container;
mod error;
mod permission;
pub mod signal;
pub mod source;
pub mod traits;
pub mod translate;
mod value;
pub mod object;
pub mod types;
pub mod date;
pub fn to_gboolean(b: bool) -> ffi::gboolean {
match b {
true => ffi::GTRUE,
false => ffi::GFALSE
}
}
pub fn to_bool(b: ffi::gboolean) -> bool {
b != ffi::GFALSE
}
pub struct TypeInterface;
pub struct TypeInstance;
pub struct TypeClass;
#[derive(Clone, Copy)]
pub enum ParamFlags{
Readable,
Writable,
ReadWrite,
Construct,
ConstructOnly,
LaxValidation,
StaticName,
Private,
StaticNick,
StaticBlurb,
Deprecated
}
#[repr(C)]
pub struct ParamSpec {
g_type_instance: TypeInstance,
name: *mut c_char,
flags: ParamFlags,
value_type: ffi::GType,
owner_type: ffi::GType,
}