IBusObject

IBusObject — Base object of IBus.

Stability Level

Stable, unless otherwise indicated

Synopsis

enum                IBusObjectFlags;
#define             IBUS_OBJECT_FLAGS                   (obj)
#define             IBUS_OBJECT_SET_FLAGS               (obj,flag)
#define             IBUS_OBJECT_UNSET_FLAGS             (obj,flag)
#define             IBUS_OBJECT_DESTROYED               (obj)
                    IBusObject;
IBusObject *        ibus_object_new                     (void);
void                ibus_object_destroy                 (IBusObject *object);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----IBusObject
               +----IBusSerializable
               +----IBusBus
               +----IBusProxy
               +----IBusService
               +----IBusConnection
               +----IBusServer

Signals

  "destroy"                                        : Run Last

Description

IBusObject is the base object for all objects in IBus.

Details

enum IBusObjectFlags

typedef enum {
    IBUS_IN_DESTRUCTION = (1 << 0),
    IBUS_DESTROYED      = (1 << 1),
    IBUS_RESERVED_1     = (1 << 2),
    IBUS_RESERVED_2     = (1 << 3),
} IBusObjectFlags;


IBUS_OBJECT_FLAGS()

#define IBUS_OBJECT_FLAGS(obj)             (IBUS_OBJECT (obj)->flags)

obj :


IBUS_OBJECT_SET_FLAGS()

#define IBUS_OBJECT_SET_FLAGS(obj,flag)    G_STMT_START{ (IBUS_OBJECT_FLAGS (obj) |= (flag)); }G_STMT_END

obj :

flag :


IBUS_OBJECT_UNSET_FLAGS()

#define IBUS_OBJECT_UNSET_FLAGS(obj,flag)  G_STMT_START{ (IBUS_OBJECT_FLAGS (obj) &= ~(flag)); }G_STMT_END

obj :

flag :


IBUS_OBJECT_DESTROYED()

#define IBUS_OBJECT_DESTROYED(obj)         (IBUS_OBJECT_FLAGS (obj) & IBUS_DESTROYED)

obj :


IBusObject

typedef struct _IBusObject IBusObject;

All the fields in the IBusObject structure are private to the IBusObject and should never be accessed directly.


ibus_object_new ()

IBusObject *        ibus_object_new                     (void);

Creates a new instance of an IBusObject.

Returns :

a new instance of IBusObject.

ibus_object_destroy ()

void                ibus_object_destroy                 (IBusObject *object);

Emit the "destory" signal notifying all reference holders that they should release the IBusObject.

The memory for the object itself won't be deleted until its reference count actually drops to 0; ibus_object_destroy merely asks reference holders to release their references. It does not free the object.

object :

an IBusObject to destroy.

Signal Details

The "destroy" signal

void                user_function                      (IBusObject *object,
                                                        gpointer    user_data)      : Run Last

Destroy and free an IBusObject

See also: ibus_object_destroy().

Note

Argument user_data is ignored in this function.

object :

An IBusObject.

user_data :

user data set when the signal handler was connected.