SCIMBridge 0.4.x

client-common/scim-bridge-client-imcontext.h

Go to the documentation of this file.
00001 /*
00002  * SCIM Bridge
00003  *
00004  * Copyright (c) 2006 Ryo Dairiki <ryo-dairiki@users.sourceforge.net>
00005  *
00006  *
00007  * This library is free software; you can redistribute it and/or
00008  * modify it under the terms of the GNU Lesser General Public
00009  * License as published by the Free Software Foundation and 
00010  * appearing in the file LICENSE.LGPL included in the package of this file.
00011  * You can also redistribute it and/or modify it under the terms of 
00012  * the GNU General Public License as published by the Free Software Foundation and 
00013  * appearing in the file LICENSE.GPL included in the package of this file.
00014  *
00015  * This library is distributed in the hope that it will be useful,
00016  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00018  */
00019 
00026 #ifndef SCIMBRIDGECLIENTIMCONTEXT_H_
00027 #define SCIMBRIDGECLIENTIMCONTEXT_H_
00028 
00029 #include "scim-bridge.h"
00030 #include "scim-bridge-attribute.h"
00031 #include "scim-bridge-imcontext.h"
00032 #include "scim-bridge-key-event.h"
00033 
00037 typedef struct _ScimBridgeClientIMContext ScimBridgeClientIMContext;
00038 
00039 #ifdef __cplusplus
00040 extern "C"
00041 {
00042 #endif
00043 
00050     void scim_bridge_client_imcontext_set_id (ScimBridgeClientIMContext *imcontext, scim_bridge_imcontext_id_t new_id);
00051 
00059     scim_bridge_imcontext_id_t scim_bridge_client_imcontext_get_id (const ScimBridgeClientIMContext *imcontext);
00060 
00067     void scim_bridge_client_imcontext_set_preedit_string (ScimBridgeClientIMContext *imcontext, const char *preedit_string);
00068 
00075     void scim_bridge_client_imcontext_set_preedit_shown (ScimBridgeClientIMContext *imcontext, boolean preedit_shown);
00076 
00083     void scim_bridge_client_imcontext_set_preedit_cursor_position (ScimBridgeClientIMContext *imcontext, int cursor_position);
00084 
00092     void scim_bridge_client_imcontext_set_preedit_attributes (ScimBridgeClientIMContext *imcontext, ScimBridgeAttribute** const preedit_attributes, int attribute_count);
00093 
00099     void scim_bridge_client_imcontext_update_preedit (ScimBridgeClientIMContext *imcontext);
00100 
00107     void scim_bridge_client_imcontext_set_commit_string (ScimBridgeClientIMContext *imcontext, const char *commit_string);
00108 
00114     void scim_bridge_client_imcontext_commit (ScimBridgeClientIMContext *imcontext);
00115 
00121     void scim_bridge_client_imcontext_beep (ScimBridgeClientIMContext *imcontext);
00122 
00129     void scim_bridge_client_imcontext_forward_key_event (ScimBridgeClientIMContext *imcontext, const ScimBridgeKeyEvent *key_event);
00130 
00141     boolean scim_bridge_client_imcontext_get_surrounding_text (ScimBridgeClientIMContext *imcontext, int before_max, int after_max, char **string, int *cursor_position);
00142 
00151     boolean scim_bridge_client_imcontext_delete_surrounding_text (ScimBridgeClientIMContext *imcontext, int offset, int length);
00152 
00161     boolean scim_bridge_client_imcontext_replace_surrounding_text (ScimBridgeClientIMContext *imcontext, int cursor_position, const char *string);
00162     
00169     void scim_bridge_client_imcontext_imengine_status_changed (ScimBridgeClientIMContext *imcontext, boolean enabled);
00170 
00171 #ifdef __cplusplus
00172 }
00173 #endif
00174 #endif                                            /*SCIMBRIDGECLIENTIMCONTEXT_H_*/