[][src]Struct libappindicator::_GObjectClass

#[repr(C)]pub struct _GObjectClass {
    pub g_type_class: _GTypeClass,
    pub construct_properties: *mut _GSList,
    pub constructor: Option<unsafe extern "C" fn(u64, u32, *mut _GObjectConstructParam) -> *mut _GObject>,
    pub set_property: Option<unsafe extern "C" fn(*mut _GObject, u32, *const _GValue, *mut _GParamSpec)>,
    pub get_property: Option<unsafe extern "C" fn(*mut _GObject, u32, *mut _GValue, *mut _GParamSpec)>,
    pub dispose: Option<unsafe extern "C" fn(*mut _GObject)>,
    pub finalize: Option<unsafe extern "C" fn(*mut _GObject)>,
    pub dispatch_properties_changed: Option<unsafe extern "C" fn(*mut _GObject, u32, *mut *mut _GParamSpec)>,
    pub notify: Option<unsafe extern "C" fn(*mut _GObject, *mut _GParamSpec)>,
    pub constructed: Option<unsafe extern "C" fn(*mut _GObject)>,
    pub flags: u64,
    pub pdummy: [*mut c_void; 6],
}

GObjectClass: @g_type_class: the parent class @constructor: the @constructor function is called by g_object_new () to complete the object initialization after all the construction properties are set. The first thing a @constructor implementation must do is chain up to the @constructor of the parent class. Overriding @constructor should be rarely needed, e.g. to handle construct properties, or to implement singletons. @set_property: the generic setter for all properties of this type. Should be overridden for every type with properties. If implementations of @set_property don't emit property change notification explicitly, this will be done implicitly by the type system. However, if the notify signal is emitted explicitly, the type system will not emit it a second time. @get_property: the generic getter for all properties of this type. Should be overridden for every type with properties. @dispose: the @dispose function is supposed to drop all references to other objects, but keep the instance otherwise intact, so that client method invocations still work. It may be run multiple times (due to reference loops). Before returning, @dispose should chain up to the @dispose method of the parent class. @finalize: instance finalization function, should finish the finalization of the instance begun in @dispose and chain up to the @finalize method of the parent class. @dispatch_properties_changed: emits property change notification for a bunch of properties. Overriding @dispatch_properties_changed should be rarely needed. @notify: the class closure for the notify signal @constructed: the @constructed function is called by g_object_new() as the final step of the object creation process. At the point of the call, all construction properties have been set on the object. The purpose of this call is to allow for object initialisation steps that can only be performed after construction properties have been set. @constructed implementors should chain up to the @constructed call of their parent class to allow it to complete its initialisation.

The class structure for the GObject type.

|[ // Example of implementing a singleton using a constructor. static MySingleton *the_singleton = NULL;

static GObject* my_singleton_constructor (GType type, guint n_construct_params, GObjectConstructParam *construct_params) { GObject *object;

if (!the_singleton) { object = G_OBJECT_CLASS (parent_class)->constructor (type, n_construct_params, construct_params); the_singleton = MY_SINGLETON (object); } else object = g_object_ref (G_OBJECT (the_singleton));

return object; } ]|

Fields

g_type_class: _GTypeClassconstruct_properties: *mut _GSListconstructor: Option<unsafe extern "C" fn(u64, u32, *mut _GObjectConstructParam) -> *mut _GObject>set_property: Option<unsafe extern "C" fn(*mut _GObject, u32, *const _GValue, *mut _GParamSpec)>get_property: Option<unsafe extern "C" fn(*mut _GObject, u32, *mut _GValue, *mut _GParamSpec)>dispose: Option<unsafe extern "C" fn(*mut _GObject)>finalize: Option<unsafe extern "C" fn(*mut _GObject)>dispatch_properties_changed: Option<unsafe extern "C" fn(*mut _GObject, u32, *mut *mut _GParamSpec)>notify: Option<unsafe extern "C" fn(*mut _GObject, *mut _GParamSpec)>constructed: Option<unsafe extern "C" fn(*mut _GObject)>flags: u64pdummy: [*mut c_void; 6]

Trait Implementations

impl Clone for _GObjectClass[src]

impl Copy for _GObjectClass[src]

impl Debug for _GObjectClass[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.