SCIMBridge 0.4.x

client-common/scim-bridge-client.h

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 
00020 #ifndef SCIMBRIDGECLIENT_H_
00021 #define SCIMBRIDGECLIENT_H_
00022 
00023 #include "scim-bridge.h"
00024 #include "scim-bridge-key-event.h"
00025 #include "scim-bridge-client-imcontext.h"
00026 
00027 #ifdef __cplusplus
00028 extern "C"
00029 {
00030 #endif
00031 
00037     retval_t scim_bridge_client_initialize ();
00038 
00044     retval_t scim_bridge_client_finalize ();
00045 
00051     boolean scim_bridge_client_is_initialized ();
00052 
00058     retval_t scim_bridge_client_open_messenger ();
00059 
00065     retval_t scim_bridge_client_close_messenger ();
00066 
00072     boolean scim_bridge_client_is_messenger_opened ();
00073 
00079     int scim_bridge_client_get_messenger_fd ();
00080 
00081 
00088     boolean scim_bridge_client_is_reconnection_enabled ();
00089 
00090 
00097     retval_t scim_bridge_client_read_and_dispatch ();
00098 
00099 
00106     retval_t scim_bridge_client_register_imcontext (ScimBridgeClientIMContext *imcontext);
00107 
00114     retval_t scim_bridge_client_deregister_imcontext (ScimBridgeClientIMContext *imcontext);
00115 
00122     ScimBridgeClientIMContext *scim_bridge_client_find_imcontext (scim_bridge_imcontext_id_t id);
00123 
00130     retval_t scim_bridge_client_reset_imcontext (const ScimBridgeClientIMContext *imcontext);
00131 
00139     retval_t scim_bridge_client_change_focus (const ScimBridgeClientIMContext *imcontext, boolean focus_in);
00140 
00149     retval_t scim_bridge_client_handle_key_event (const ScimBridgeClientIMContext *imcontext, const ScimBridgeKeyEvent *key_event, boolean *consumed);
00150 
00159     retval_t scim_bridge_client_set_cursor_location (const ScimBridgeClientIMContext *imcontext, int x, int y);
00160 
00167     retval_t scim_bridge_client_set_preedit_mode (const ScimBridgeClientIMContext *imcontext, scim_bridge_preedit_mode_t mode);
00168 
00169 #ifdef __cplusplus
00170 }
00171 #endif
00172 #endif                                            /*SCIMBRIDGECLIENT_H_*/