IBusFactory

IBusFactory — Factory for creating engine instances.

Stability Level

Stable, unless otherwise indicated

Synopsis

struct              IBusFactory;
struct              IBusFactoryClass;
IBusFactory *       ibus_factory_new                    (GDBusConnection *connection);
void                ibus_factory_add_engine             (IBusFactory *factory,
                                                         const gchar *engine_name,
                                                         GType engine_type);
IBusEngine *        ibus_factory_create_engine          (IBusFactory *factory,
                                                         const gchar *engine_name);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----IBusObject
               +----IBusService
                     +----IBusFactory

Signals

  "create-engine"                                  : Run Last

Description

An IBusFactory is an IBusService that creates input method engine (IME) instance. It provides CreateEngine remote method, which creates an IME instance by name, and returns the D-Bus object path to IBus daemon.

see_also: IBusEngine

Details

struct IBusFactory

struct IBusFactory;

An opaque data type representing an IBusFactory.


struct IBusFactoryClass

struct IBusFactoryClass {
    /* signals */
    IBusEngine *
                (* create_engine)
                                    (IBusFactory    *factory,
                                     const gchar    *engine_name);
};


ibus_factory_new ()

IBusFactory *       ibus_factory_new                    (GDBusConnection *connection);

New an IBusFactory.

connection :

An GDBusConnection.

Returns :

A newly allocated IBusFactory.

ibus_factory_add_engine ()

void                ibus_factory_add_engine             (IBusFactory *factory,
                                                         const gchar *engine_name,
                                                         GType engine_type);

Add an engine to the factory.

factory :

An IBusFactory.

engine_name :

Name of an engine.

engine_type :

GType of an engine.

ibus_factory_create_engine ()

IBusEngine *        ibus_factory_create_engine          (IBusFactory *factory,
                                                         const gchar *engine_name);

Create an IBusEngine with engine_name.

factory :

An IBusFactory.

engine_name :

Name of an engine.

Returns :

IBusEngine with engine_name. [transfer full]

Signal Details

The "create-engine" signal

IBusEngine*         user_function                      (IBusFactory *factory,
                                                        gchar       *engine_name,
                                                        gpointer     user_data)        : Run Last

The ::create-engine signal is a signal to create IBusEngine with engine_name, which gets emitted when IBusFactory received CreateEngine dbus method. The callback functions will be called until a callback returns a non-null object of IBusEngine.

factory :

the factory which received the signal

engine_name :

the engine_name which received the signal

returns :

An IBusEngine. [transfer full]

user_data :

user data set when the signal handler was connected.