diff options
Diffstat (limited to 'src/ibusengine.h')
-rw-r--r-- | src/ibusengine.h | 135 |
1 files changed, 134 insertions, 1 deletions
diff --git a/src/ibusengine.h b/src/ibusengine.h index 5a86bf0..afaa496 100644 --- a/src/ibusengine.h +++ b/src/ibusengine.h @@ -17,6 +17,16 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ +/** + * SECTION: ibusengine + * @short_description: Input method engine abstract. + * @stability: Stable + * @see_also: #IBusComponent, #IBusEngineDesc + * + * An IBusEngine provides infrastructure for input method engine. + * Developers can "extend" this class for input method engine development. + */ + #ifndef __IBUS_ENGINE_H_ #define __IBUS_ENGINE_H_ @@ -49,13 +59,22 @@ G_BEGIN_DECLS typedef struct _IBusEngine IBusEngine; typedef struct _IBusEngineClass IBusEngineClass; +/** + * IBusEngine: + * @enabled: Whether the engine is enabled. + * @has_focus: Whether the engine has focus. + * @cursor_area: Area of cursor. + * @client_capabilities: IBusCapabilite (client capabilities) flags. + * + * IBusEngine properties. + */ struct _IBusEngine { IBusService parent; /* instance members */ + /*< public >*/ gboolean enabled; gboolean has_focus; - /* cursor location */ IBusRectangle cursor_area; guint client_capabilities; }; @@ -103,47 +122,161 @@ struct _IBusEngineClass { }; GType ibus_engine_get_type (void); + +/** + * ibus_engine_new: + * @name: Name of the IBusObject. + * @path: Path for IBusService. + * @connection: An opened IBusConnection. + * @returns: A newly allocated IBusEngine. + * + * New an IBusEngine. + */ IBusEngine *ibus_engine_new (const gchar *name, const gchar *path, IBusConnection *connection); +/** + * ibus_engine_commit_text: + * @engine: An IBusEngine. + * @text: String commit to IBusEngine. + * + * Commit output of input method to IBus client. + */ void ibus_engine_commit_text (IBusEngine *engine, IBusText *text); + +/** + * ibus_engine_update_preedit_text: + * @engine: An IBusEngine. + * @text: Update content. + * @cursor_pos: Current position of cursor + * @visible: Whether the pre-edit buffer is visible. + * + * Update the pre-edit buffer. + */ void ibus_engine_update_preedit_text (IBusEngine *engine, IBusText *text, guint cursor_pos, gboolean visible); + +/** + * ibus_engine_show_preedit_text: + * @engine: An IBusEngine. + * + * Show the pre-edit buffer. + */ void ibus_engine_show_preedit_text (IBusEngine *engine); +/** + * ibus_engine_hide_preedit_text: + * @engine: An IBusEngine. + * + * Hide the pre-edit buffer. + */ void ibus_engine_hide_preedit_text (IBusEngine *engine); + +/** + * ibus_engine_update_auxiliary_text: + * @engine: An IBusEngine. + * @text: Update content. + * @visible: Whether the auxiliary text bar is visible. + * + * Update the auxiliary bar. + */ void ibus_engine_update_auxiliary_text (IBusEngine *engine, IBusText *text, gboolean visible); +/** + * ibus_engine_show_auxiliary_text: + * @engine: An IBusEngine. + * + * Show the auxiliary bar. + */ void ibus_engine_show_auxiliary_text (IBusEngine *engine); +/** + * ibus_engine_hide_auxiliary_text: + * @engine: An IBusEngine. + * + * Hide the auxiliary bar. + */ void ibus_engine_hide_auxiliary_text (IBusEngine *engine); + +/** + * ibus_engine_update_lookup_table: + * @engine: An IBusEngine. + * @lookup_table: An lookup_table. + * @visible: Whether the lookup_table is visible. + * + * Update the lookup table. + */ void ibus_engine_update_lookup_table (IBusEngine *engine, IBusLookupTable *lookup_table, gboolean visible); +/** + * ibus_engine_show_lookup_table: + * @engine: An IBusEngine. + * + * Show the lookup table. + */ void ibus_engine_show_lookup_table (IBusEngine *engine); +/** + * ibus_engine_hide_lookup_table: + * @engine: An IBusEngine. + * + * Hide the lookup table. + */ void ibus_engine_hide_lookup_table (IBusEngine *engine); + +/** + * ibus_engine_forward_key_event: + * @engine: An IBusEngine. + * @keyval: KeySym. + * @is_press: Where the key is pressed. + * @state: Key modifier flags. + * + * Forward the key event. + */ void ibus_engine_forward_key_event (IBusEngine *engine, guint keyval, guint state); +/** + * ibus_engine_register_properties: + * @engine: An IBusEngine. + * @prop_list: Property List. + * + * Register and show properties in language bar. + */ void ibus_engine_register_properties (IBusEngine *engine, IBusPropList *prop_list); +/** + * ibus_engine_update_property: + * @engine: An IBusEngine. + * @prop: IBusProperty to be updated. + * + * Update the state displayed in language bar. + */ void ibus_engine_update_property(IBusEngine *engine, IBusProperty *prop); + +/** + * ibus_engine_get_name: + * @engine: An IBusEngine. + * @returns: Name of IBusEngine. + * + * Return the name of IBusEngine. + */ const gchar *ibus_engine_get_name (IBusEngine *engine); G_END_DECLS |