ibus-qt 1.3.0

/builddir/build/BUILD/ibus-qt-1.3.0-Source/src/qibusinputcontext.h

00001 #ifndef __Q_IBUS_INPUT_CONTEXT_H_
00002 #define __Q_IBUS_INPUT_CONTEXT_H_
00003 
00004 #include "qibusbus.h"
00005 #include "qibustext.h"
00006 #include "qibusproperty.h"
00007 #include "qibusproplist.h"
00008 #include "qibuslookuptable.h"
00009 
00010 class IBusInputContextProxy;
00011 
00012 namespace IBus {
00013 
00014 class Bus;
00015 typedef Pointer<Bus> BusPointer;
00016 
00017 class InputContext;
00018 typedef Pointer<InputContext> InputContextPointer;
00019 
00020 class InputContext : public Object
00021 {
00022     Q_OBJECT;
00023 
00024 public:
00025     InputContext (const BusPointer &bus, const QString &path);
00026     ~InputContext (void);
00027 
00028     void reset (void);
00029     void destroy (void);
00030     void enable (void);
00031     void disable (void);
00032     void focusIn (void);
00033     void focusOut (void);
00034     void getEngine (void);
00035     bool isEnabled (void);
00036     bool processKeyEvent (uint keyval, uint keycode, uint state);
00037     void setCapabilities (uint caps);
00038     void setCursorLocation (int x, int y, int w, int h);
00039     void setEngine (const QString &name);
00040 
00041 public:
00042     static InputContextPointer create (const BusPointer &bus, const QString &name);
00043 
00044 Q_SIGNALS:
00045     void commitText (const TextPointer &text);
00046 
00047     void updatePreeditText (const TextPointer &text, uint cursor_pos, bool visible);
00048     void showPreeditText (void);
00049     void hidePreeditText (void);
00050 
00051     void updateAuxiliaryText (const TextPointer &text, bool visible);
00052     void showAuxiliaryText (void);
00053     void hideAuxiliaryText (void);
00054 
00055     void updateLookupTable (const LookupTablePointer &table, bool visible);
00056     void showLookupTable (void);
00057     void hideLookupTable (void);
00058     void cursorUpLookupTable (void);
00059     void cursorDownLookupTable (void);
00060     void pageUpLookupTable (void);
00061     void pageDownLookupTable (void);
00062 
00063     void registerProperties (const PropListPointer &props);
00064     void updateProperty (const PropertyPointer &property);
00065 
00066     void enabled (void);
00067     void disabled (void);
00068 
00069     void forwardKeyEvent (uint keyval, uint keycode, uint state);
00070 
00071 private Q_SLOTS:
00072     void slotCommitText (const QDBusVariant &text);
00073 
00074     void slotUpdatePreeditText(const QDBusVariant &text, uint cursor_pos, bool visible);
00075     void slotHidePreeditText();
00076     void slotShowPreeditText();
00077 
00078     void slotUpdateAuxiliaryText(const QDBusVariant &text, bool visible);
00079     void slotShowAuxiliaryText();
00080     void slotHideAuxiliaryText();
00081 
00082     void slotUpdateLookupTable(const QDBusVariant &table, bool visible);
00083     void slotShowLookupTable();
00084     void slotHideLookupTable();
00085     void slotCursorUpLookupTable();
00086     void slotCursorDownLookupTable();
00087     void slotPageUpLookupTable();
00088     void slotPageDownLookupTable();
00089 
00090     void slotRegisterProperties(const QDBusVariant &props);
00091     void slotUpdateProperty(const QDBusVariant &prop);
00092 
00093     void slotEnabled();
00094     void slotDisabled();
00095 
00096     void slotForwardKeyEvent(uint keyval, uint keycode, uint state);
00097 
00098 /*
00099 signals:
00100     void disconnected (void);
00101     void connected (void);
00102 
00103 private slots:
00104     void slotAddressChanged (const QString &path);
00105     void slotIBusDisconnected (void);
00106 */
00107 private:
00108     BusPointer m_bus;
00109     IBusInputContextProxy *m_context;
00110 };
00111 
00112 };
00113 
00114 #endif
 All Classes Namespaces Functions Enumerations Enumerator