SCIMBridge  0.4.x
scim-bridge-agent-protected.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 
20 #ifndef SCIMBRIDGEAGENTPROTECTED_H_
21 #define SCIMBRIDGEAGENTPROTECTED_H_
22 
29 #define Uses_SCIM_EVENT
30 #define Uses_SCIM_TRANSACTION
31 
32 #include <scim.h>
33 
34 #include "scim-bridge-display.h"
35 #include "scim-bridge-imcontext.h"
36 
40 
45 {
46 
47  public:
48 
53 
57  virtual void interrupt () = 0;
58 
62  virtual void quit () = 0;
63 
67  virtual void load_config () = 0;
68 
72  virtual void save_config () = 0;
73 
79  virtual void add_client_listener (ScimBridgeAgentClientListener *client_listener) = 0;
80 
86  virtual void remove_client_listener (ScimBridgeAgentClientListener *client_listener) = 0;
87 
95  virtual bool filter_hotkeys (scim_bridge_imcontext_id_t imcontext_id, const scim::KeyEvent &key_event) = 0;
96 
104  virtual bool filter_key_event (scim_bridge_imcontext_id_t imcontext_id, const scim::KeyEvent &key_event) = 0;
105 
109  virtual void request_factory_menu () = 0;
110 
118 
125  virtual void free_imcontext (scim_bridge_imcontext_id_t imcontext_id, const ScimBridgeAgentClientListener *client_listener) = 0;
126 
132  virtual void reset_imcontext (scim_bridge_imcontext_id_t imcontext_id) = 0;
133 
141  virtual void set_cursor_location (scim_bridge_imcontext_id_t imcontext_id, int cursor_x, int cursor_y) = 0;
142 
149  virtual void set_preedit_mode (scim_bridge_imcontext_id_t imcontext_id, scim_bridge_preedit_mode_t preedit_mode) = 0;
150 
157  virtual void change_focus (scim_bridge_imcontext_id_t imcontext_id, bool focus_in) = 0;
158 
159  protected:
160 
165 
166 };
167 #endif /*SCIMBRIDGEAGENTPROTECTED_H_*/