SCIMBridge 0.4.x

agent/scim-bridge-agent-panel-listener-protected.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 SCIMBRIDGEAGENTPANELLISTENERPROTECTED_H_
00027 #define SCIMBRIDGEAGENTPANELLISTENERPROTECTED_H_
00028 
00029 #define Uses_SCIM_PANEL_CLIENT
00030 
00031 #include <scim.h>
00032 
00033 #include <vector>
00034 
00035 #include "scim-bridge-imcontext.h"
00036 
00040 class ScimBridgeAgentPanelListenerProtected
00041 {
00042 
00043     public:
00044 
00048         virtual ~ScimBridgeAgentPanelListenerProtected () {}
00049 
00056         virtual void prepare (scim_bridge_imcontext_id_t imcontext_id) = 0;
00057 
00061         virtual void send () = 0;
00062 
00068         virtual void focus_in (const scim::String &factory_uuid) = 0;
00069 
00073         virtual void focus_out () = 0;
00074 
00078         virtual void update_screen () = 0;
00079 
00086         virtual void update_cursor_location (int x, int y) = 0;
00087 
00093         virtual void update_factory_info (const scim::PanelFactoryInfo &factory_info) = 0;
00094 
00098         virtual void turn_on () = 0;
00099 
00103         virtual void turn_off () = 0;
00104 
00111         virtual void set_aux_string (const scim::WideString &str, const scim::AttributeList &attrs) = 0;
00112 
00116         virtual void show_aux_string () = 0;
00117 
00121         virtual void hide_aux_string () = 0;
00122 
00128         virtual void set_lookup_table (const scim::LookupTable &table) = 0;
00129 
00133         virtual void show_lookup_table () = 0;
00134 
00138         virtual void hide_lookup_table () = 0;
00139 
00145         virtual void set_preedit_cursor_position (int cursor_pos) = 0;
00146 
00153         virtual void set_preedit_string (const scim::WideString &str, const scim::AttributeList &attrs) = 0;
00154 
00158         virtual void show_preedit () = 0;
00159 
00163         virtual void hide_preedit () = 0;
00164 
00170         virtual void start_helper (const scim::String &helper_uuid) = 0;
00171 
00177         virtual void stop_helper (const scim::String &helper_uuid) = 0;
00178 
00185         virtual void send_helper_event (const scim::String &helper_uuid, const scim::Transaction &trans) = 0;
00186 
00192         virtual void register_properties (const scim::PropertyList &properties) = 0;
00193 
00199         virtual void update_property (const scim::Property &property) = 0;
00200 
00206         virtual void show_factory_menu (const std::vector<scim::PanelFactoryInfo> &menu) = 0;
00207 
00213         virtual void show_help (const scim::String &string) = 0;
00214 
00220         virtual void register_input_context (const scim::String &factory_uuid) = 0;
00221 
00225         virtual void deregister_input_context () = 0;
00226 
00227     protected:
00228 
00232         ScimBridgeAgentPanelListenerProtected () {}
00233 
00234 };
00235 #endif                                            /*SCIMBRIDGEAGENTPANELLISTENERPROTECTED_H_*/