ibus-qt  1.3.3
 All Classes Namespaces Functions Enumerations Enumerator
qibusengine.h
1 #ifndef __Q_IBUS_ENGINE_H_
2 #define __Q_IBUS_ENGINE_H_
3 
4 #include <QDBusVariant>
5 #include "qibustypes.h"
6 #include "qibustext.h"
7 #include "qibusproplist.h"
8 #include "qibuslookuptable.h"
9 
10 class IBusEngineAdaptor;
11 
12 namespace IBus {
13 
14 class Engine;
15 typedef Pointer<Engine> EnginePointer;
16 
17 class Engine : public Object
18 {
19  Q_OBJECT
20 
21 public :
27  Engine (const QString &engineName);
28 
34  virtual ~Engine ();
35 
36 public :
42  const QString & engineName () const;
43 
51  void updateLookupTableFast (const LookupTablePointer & lookupTable, bool visible);
52 
53 public :
60  void commitText (const TextPointer & text)
61  {
62  QDBusVariant variant;
63  CommitText (qDBusVariantFromSerializable (text, variant));
64  }
65 
72  {
73  CursorDownLookupTable();
74  }
75 
82  {
83  CursorUpLookupTable();
84  }
85 
94  void forwardKeyEvent (uint keyval, uint keycode, uint state)
95  {
96  ForwardKeyEvent(keyval, keycode, state);
97  }
98 
105  {
106  HideAuxiliaryText();
107  }
108 
115  {
116  HideLookupTable();
117  }
118 
125  {
126  HidePreeditText();
127  }
128 
135  {
136  PageDownLookupTable();
137  }
138 
145  {
146  PageUpLookupTable();
147  }
148 
155  void registerProperties (const PropListPointer & props)
156  {
157  QDBusVariant variant;
158  RegisterProperties(qDBusVariantFromSerializable (props, variant));
159  }
160 
167  {
168  ShowAuxiliaryText();
169  }
170 
177  {
178  ShowLookupTable();
179  }
180 
187  {
188  ShowPreeditText();
189  }
190 
198  void updateAuxiliaryText (const TextPointer & text, bool visible)
199  {
200  QDBusVariant variant;
201  UpdateAuxiliaryText (qDBusVariantFromSerializable (text, variant), visible);
202  }
203 
211  void updateLookupTable (const LookupTablePointer & lookupTable, bool visible)
212  {
213  QDBusVariant variant;
214  UpdateLookupTable (qDBusVariantFromSerializable (lookupTable, variant), visible);
215  }
216 
226  void updatePreeditText (const TextPointer & text, uint cursorPos, bool visible, uint mode = EnginePreeditClear)
227  {
228  QDBusVariant variant;
229  UpdatePreeditText (qDBusVariantFromSerializable (text, variant), cursorPos, visible, mode);
230  }
231 
238  void updateProperty (const PropertyPointer & prop)
239  {
240  QDBusVariant variant;
241  UpdateProperty (qDBusVariantFromSerializable (prop, variant));
242  }
243 
244 public:
254  virtual void candidateClicked (uint index, uint button, uint state);
255 
261  virtual void cursorDown ();
262 
268  virtual void cursorUp ();
269  virtual void destroy ();
270 
276  virtual void disable ();
277 
283  virtual void enable ();
284 
290  virtual void focusIn ();
291 
297  virtual void focusOut ();
298 
304  virtual void pageDown ();
305 
311  virtual void pageUp ();
312 
322  virtual bool processKeyEvent (uint keyval, uint keycode, uint state);
323 
331  virtual void propertyActivate (const QString &prop_name, int prop_state);
332 
339  virtual void propertyHide (const QString &prop_name);
340 
347  virtual void propertyShow (const QString &prop_name);
348 
354  virtual void reset ();
355 
362  virtual void setCapabilities (uint cap);
363 
373  virtual void setCursorLocation (int x, int y, int w, int h);
374 
375 private Q_SLOTS:
376  Q_INVOKABLE void CandidateClicked (uint index, uint button, uint state);
377  Q_INVOKABLE void CursorDown ();
378  Q_INVOKABLE void CursorUp ();
379  Q_INVOKABLE void Destroy ();
380  Q_INVOKABLE void Disable ();
381  Q_INVOKABLE void Enable ();
382  Q_INVOKABLE void FocusIn ();
383  Q_INVOKABLE void FocusOut ();
384  Q_INVOKABLE void PageDown ();
385  Q_INVOKABLE void PageUp ();
386  Q_INVOKABLE bool ProcessKeyEvent (uint keyval, uint keycode, uint state);
387  Q_INVOKABLE void PropertyActivate (const QString &prop_name, int prop_state);
388  Q_INVOKABLE void PropertyHide (const QString &prop_name);
389  Q_INVOKABLE void PropertyShow (const QString &prop_name);
390  Q_INVOKABLE void Reset ();
391  Q_INVOKABLE void SetCapabilities (uint cap);
392  Q_INVOKABLE void SetCursorLocation (int x, int y, int w, int h);
393 
394 Q_SIGNALS :
398  void CommitText (const QDBusVariant &text);
399  void CursorDownLookupTable ();
400  void CursorUpLookupTable ();
401  void ForwardKeyEvent (uint keyval, uint keycode, uint state);
402  void HideAuxiliaryText ();
403  void HideLookupTable ();
404  void HidePreeditText ();
405  void PageDownLookupTable ();
406  void PageUpLookupTable ();
407  void RegisterProperties (const QDBusVariant &props);
408  void ShowAuxiliaryText ();
409  void ShowLookupTable ();
410  void ShowPreeditText ();
411  void UpdateAuxiliaryText (const QDBusVariant &text, bool visible);
412  void UpdateLookupTable (const QDBusVariant &lookup_table, bool visible);
413  void UpdatePreeditText (const QDBusVariant &text, uint cursor_pos, bool visible, uint mode);
414  void UpdateProperty (const QDBusVariant &prop);
415 private :
416  QString m_engineName;
417  IBusEngineAdaptor *m_adaptor;
418 };
419 
420 };
421 
422 #endif