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; either 00010 * version 2 of the License, or (at your option) any later version.* 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the 00014 * GNU Lesser General Public License for more details.* 00015 * You should have received a copy of the GNU Lesser General Public 00016 * License along with this program; if not, write to the 00017 * Free Software Foundation, Inc., 59 Temple Place, Suite 330, 00018 * Boston, MA 02111-1307 USA 00019 */ 00020 00021 #ifndef SCIMBRIDGECLIENT_H_ 00022 #define SCIMBRIDGECLIENT_H_ 00023 00024 #include "scim-bridge.h" 00025 #include "scim-bridge-key-event.h" 00026 #include "scim-bridge-client-imcontext.h" 00027 00028 #ifdef __cplusplus 00029 extern "C" 00030 { 00031 #endif 00032 00038 retval_t scim_bridge_client_initialize (); 00039 00045 retval_t scim_bridge_client_finalize (); 00046 00052 boolean scim_bridge_client_is_initialized (); 00053 00059 retval_t scim_bridge_client_open_messenger (); 00060 00066 retval_t scim_bridge_client_close_messenger (); 00067 00073 boolean scim_bridge_client_is_messenger_opened (); 00074 00080 int scim_bridge_client_get_messenger_fd (); 00081 00082 00089 boolean scim_bridge_client_is_reconnection_enabled (); 00090 00091 00098 retval_t scim_bridge_client_read_and_dispatch (); 00099 00100 00107 retval_t scim_bridge_client_register_imcontext (ScimBridgeClientIMContext *imcontext); 00108 00115 retval_t scim_bridge_client_deregister_imcontext (ScimBridgeClientIMContext *imcontext); 00116 00123 ScimBridgeClientIMContext *scim_bridge_client_find_imcontext (scim_bridge_imcontext_id_t id); 00124 00131 retval_t scim_bridge_client_reset_imcontext (const ScimBridgeClientIMContext *imcontext); 00132 00140 retval_t scim_bridge_client_change_focus (const ScimBridgeClientIMContext *imcontext, boolean focus_in); 00141 00150 retval_t scim_bridge_client_handle_key_event (const ScimBridgeClientIMContext *imcontext, const ScimBridgeKeyEvent *key_event, boolean *consumed); 00151 00160 retval_t scim_bridge_client_set_cursor_location (const ScimBridgeClientIMContext *imcontext, int x, int y); 00161 00168 retval_t scim_bridge_client_set_preedit_mode (const ScimBridgeClientIMContext *imcontext, scim_bridge_preedit_mode_t mode); 00169 00170 #ifdef __cplusplus 00171 } 00172 #endif 00173 #endif /*SCIMBRIDGECLIENT_H_*/