SCIMBridge  0.4.x
scim-bridge-agent-imcontext.h
Go to the documentation of this file.
1 /*
2  * SCIM Bridge
3  *
4  * Copyright (c) 2006 Ryo Dairiki <ryo-dairiki@users.sourceforge.net>
5  *
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation and
10  * appearing in the file LICENSE.LGPL included in the package of this file.
11  * You can also redistribute it and/or modify it under the terms of
12  * the GNU General Public License as published by the Free Software Foundation and
13  * appearing in the file LICENSE.GPL included in the package of this file.
14  *
15  * This library is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18  */
19 
26 #ifndef SCIMBRIDGEAGENTIMCONTEXT_H_
27 #define SCIMBRIDGEAGENTIMCONTEXT_H_
28 
29 #define Uses_SCIM_ATTRIBUTE
30 #define Uses_SCIM_BACKEND
31 #define Uses_SCIM_IMENGINE
32 #define Uses_SCIM_IMENGINE_MODULE
33 #define Uses_SCIM_LOOKUP_TABLE
34 
35 #include <scim.h>
36 
37 #include "scim-bridge.h"
38 #include "scim-bridge-imcontext.h"
39 
41 
44 
49 {
50 
51  public:
52 
60 
66  static void free_by_client (const ScimBridgeAgentClientListener *client_listener);
67 
75 
83  static void static_initialize (ScimBridgeAgentPanelListenerProtected *panel_listener, const scim::String &scim_language, scim::BackEndPointer scim_backend);
84 
88  static void static_finalize ();
89 
95  static bool is_imengine_shared ();
96 
102  static void set_imengine_shared (bool shared);
103 
109  static bool is_on_the_spot_enabled ();
110 
116  static void set_on_the_spot_enabled (bool enabled);
117 
123  static bool is_enabled_by_default ();
124 
130  static void set_enabled_by_default (bool enabled);
131 
137  static scim::String get_help_hotkeys ();
138 
145  static void set_help_hotkeys (const scim::String &hotkey_str);
146 
151 
157  virtual bool is_enabled () = 0;
158 
164  virtual void set_enabled (bool new_state) = 0;
165 
171  virtual scim_bridge_preedit_mode_t get_preedit_mode () const = 0;
172 
178  virtual void set_preedit_mode (scim_bridge_preedit_mode_t new_preedit_mode) = 0;
179 
185  virtual scim_bridge_imcontext_id_t get_id () = 0;
186 
193 
200  virtual bool filter_key_event (const scim::KeyEvent &key_event) = 0;
201 
207  virtual void forward_key_event (const scim::KeyEvent &key_event) = 0;
208 
212  virtual void focus_in () = 0;
213 
217  virtual void focus_out () = 0;
218 
222  virtual void reset () = 0;
223 
230  virtual void set_cursor_location (int x, int y) = 0;
231 
235  virtual void open_next_imengine () = 0;
236 
240  virtual void open_previous_imengine () = 0;
241 
245  virtual void open_imengine_by_uuid (const scim::String &uuid) = 0;
246 
250  virtual void open_imengine (scim::IMEngineFactoryPointer factory) = 0;
251 
257  virtual void update_lookup_table_page_size (int page_size) = 0;
258 
262  virtual void lookup_table_page_up () = 0;
263 
267  virtual void lookup_table_page_down () = 0;
268 
274  virtual void lookup_table_select_candidate (int candidate_index) = 0;
275 
281  virtual void trigger_property (const scim::String &property) = 0;
282 
290  virtual void process_helper_event (const scim::String &target_uuid, const scim::String &helper_uuid, const scim::Transaction &trans) = 0;
291 
297  virtual void panel_move_preedit_caret (int caret_pos) = 0;
298 
304  virtual void panel_commit_string (const scim::WideString &wstr) = 0;
305 
309  virtual void panel_request_help () = 0;
310 
316  virtual void panel_change_factory (const scim::String &uuid) = 0;
317 
318  protected:
319 
324 
325 };
326 #endif /*SCIMBRIDGEAGENTIMCONTEXT_H_*/
Definition: scim-bridge-agent-panel-listener-protected.h:40
virtual ~ScimBridgeAgentIMContext()
Definition: scim-bridge-agent-imcontext.h:150
Definition: scim-bridge-agent-client-listener.h:43
static bool is_imengine_shared()
Definition: scim-bridge-agent-imcontext.cpp:389
enum _scim_bridge_preedit_mode_t scim_bridge_preedit_mode_t
Definition: scim-bridge-imcontext.h:41
virtual void panel_move_preedit_caret(int caret_pos)=0
virtual void set_cursor_location(int x, int y)=0
virtual ScimBridgeAgentClientListener * get_client_listener()=0
This is the header file for the protected interface of ScimBridgeAgentPanelListener.
static void free_by_client(const ScimBridgeAgentClientListener *client_listener)
Definition: scim-bridge-agent-imcontext.cpp:246
virtual void panel_request_help()=0
This header must be included by all the source codes which use IMContextes.
virtual void forward_key_event(const scim::KeyEvent &key_event)=0
static void static_initialize(ScimBridgeAgentPanelListenerProtected *panel_listener, const scim::String &scim_language, scim::BackEndPointer scim_backend)
Definition: scim-bridge-agent-imcontext.cpp:201
virtual void reset()=0
virtual void lookup_table_select_candidate(int candidate_index)=0
virtual bool filter_key_event(const scim::KeyEvent &key_event)=0
virtual bool is_enabled()=0
virtual void update_lookup_table_page_size(int page_size)=0
virtual void lookup_table_page_up()=0
virtual void panel_commit_string(const scim::WideString &wstr)=0
static void set_help_hotkeys(const scim::String &hotkey_str)
Definition: scim-bridge-agent-imcontext.cpp:278
virtual void open_next_imengine()=0
int scim_bridge_imcontext_id_t
Definition: scim-bridge-imcontext.h:47
static void static_finalize()
Definition: scim-bridge-agent-imcontext.cpp:217
static bool is_on_the_spot_enabled()
Definition: scim-bridge-agent-imcontext.cpp:267
This header describes about fundamental definitions of scim-bridge.
virtual void focus_out()=0
virtual void trigger_property(const scim::String &property)=0
static scim::String get_help_hotkeys()
static void set_on_the_spot_enabled(bool enabled)
Definition: scim-bridge-agent-imcontext.cpp:273
static bool is_enabled_by_default()
Definition: scim-bridge-agent-imcontext.cpp:377
virtual void open_previous_imengine()=0
virtual void lookup_table_page_down()=0
virtual scim_bridge_preedit_mode_t get_preedit_mode() const =0
virtual void process_helper_event(const scim::String &target_uuid, const scim::String &helper_uuid, const scim::Transaction &trans)=0
static ScimBridgeAgentIMContext * find(scim_bridge_imcontext_id_t imcontext_id)
Definition: scim-bridge-agent-imcontext.cpp:257
ScimBridgeAgentIMContext()
Definition: scim-bridge-agent-imcontext.h:323
virtual void focus_in()=0
virtual void panel_change_factory(const scim::String &uuid)=0
virtual void open_imengine(scim::IMEngineFactoryPointer factory)=0
Definition: scim-bridge-agent-imcontext.h:48
virtual scim_bridge_imcontext_id_t get_id()=0
virtual void set_preedit_mode(scim_bridge_preedit_mode_t new_preedit_mode)=0
virtual void open_imengine_by_uuid(const scim::String &uuid)=0
static void set_enabled_by_default(bool enabled)
Definition: scim-bridge-agent-imcontext.cpp:383
static void set_imengine_shared(bool shared)
Definition: scim-bridge-agent-imcontext.cpp:395
static ScimBridgeAgentIMContext * alloc(ScimBridgeAgentClientListener *client_listener)
Definition: scim-bridge-agent-imcontext.cpp:240
virtual void set_enabled(bool new_state)=0