atk/auto/
gobject_accessible.rs1use atk_sys;
6use glib;
7use glib::object::IsA;
8use glib::translate::*;
9use std::fmt;
10use Object;
11
12glib_wrapper! {
13 pub struct GObjectAccessible(Object<atk_sys::AtkGObjectAccessible, atk_sys::AtkGObjectAccessibleClass, GObjectAccessibleClass>) @extends Object;
14
15 match fn {
16 get_type => || atk_sys::atk_gobject_accessible_get_type(),
17 }
18}
19
20impl GObjectAccessible {
21 pub fn for_object<P: IsA<glib::Object>>(obj: &P) -> Option<Object> {
22 assert_initialized_main_thread!();
23 unsafe {
24 from_glib_none(atk_sys::atk_gobject_accessible_for_object(
25 obj.as_ref().to_glib_none().0,
26 ))
27 }
28 }
29}
30
31pub const NONE_GOBJECT_ACCESSIBLE: Option<&GObjectAccessible> = None;
32
33pub trait GObjectAccessibleExt: 'static {
34 fn get_object(&self) -> Option<glib::Object>;
35}
36
37impl<O: IsA<GObjectAccessible>> GObjectAccessibleExt for O {
38 fn get_object(&self) -> Option<glib::Object> {
39 unsafe {
40 from_glib_none(atk_sys::atk_gobject_accessible_get_object(
41 self.as_ref().to_glib_none().0,
42 ))
43 }
44 }
45}
46
47impl fmt::Display for GObjectAccessible {
48 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
49 write!(f, "GObjectAccessible")
50 }
51}