/usr/include/ibus-qt/qibusengine.h is in libibus-qt-dev 1.3.2-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 | #ifndef __Q_IBUS_ENGINE_H_
#define __Q_IBUS_ENGINE_H_
#include <QDBusVariant>
#include "qibustypes.h"
#include "qibustext.h"
#include "qibusproplist.h"
#include "qibuslookuptable.h"
class IBusEngineAdaptor;
namespace IBus {
class Engine;
typedef Pointer<Engine> EnginePointer;
class Engine : public Object
{
Q_OBJECT
public :
/**
* @brief Constructor of Engine object.
*
* @return
*/
Engine (const QString &engineName);
/**
* @brief Destructor of Engine object.
*
* @return
*/
virtual ~Engine ();
public :
/**
* @brief Gets name of the engine object.
*
* @return The name of the engine object.
*/
const QString & engineName () const;
/**
* @brief Updates the lookup table in fast mode, it only sends candidates in current page.
*
* @param[in] lookupTable A lookup table object.
* @param[in] visible Whether the lookup table is visible.
* @return
*/
void updateLookupTableFast (const LookupTablePointer & lookupTable, bool visible);
public :
/**
* @brief Commits text to client application.
*
* @param[in] text A text object.
* @return
*/
void commitText (const TextPointer & text)
{
QDBusVariant variant;
CommitText (qDBusVariantFromSerializable (text, variant));
}
/**
* @brief Moves down the cursor of lookup table.
*
* @return
*/
void cursorDownLookupTable ()
{
CursorDownLookupTable();
}
/**
* @brief Moves up the cursor of lookup table.
*
* @return
*/
void cursorUpLookupTable ()
{
CursorUpLookupTable();
}
/**
* @brief Forwards keyevents to client application.
*
* @param[in] keyval
* @param[in] keycode
* @param[in] state
* @return
*/
void forwardKeyEvent (uint keyval, uint keycode, uint state)
{
ForwardKeyEvent(keyval, keycode, state);
}
/**
* @brief Hides the auxiliary text in UI.
*
* @return
*/
void hideAuxiliaryText ()
{
HideAuxiliaryText();
}
/**
* @brief Hides the lookup table in UI.
*
* @return
*/
void hideLookupTable ()
{
HideLookupTable();
}
/**
* @brief Hides the preedit text in UI.
*
* @return
*/
void hidePreeditText ()
{
HidePreeditText();
}
/**
* @brief Page down the lookup table.
*
* @return
*/
void pageDownLookupTable ()
{
PageDownLookupTable();
}
/**
* @brief Page up the lookup table.
*
* @return
*/
void pageUpLookupTable ()
{
PageUpLookupTable();
}
/**
* @brief Registers properties.
*
* @param[in] props A PropList object contains some properties.
* @return
*/
void registerProperties (const PropListPointer & props)
{
QDBusVariant variant;
RegisterProperties(qDBusVariantFromSerializable (props, variant));
}
/**
* @brief Shows the auxiliary text in UI.
*
* @return
*/
void showAuxiliaryText ()
{
ShowAuxiliaryText();
}
/**
* @brief Shows the lookup table in UI.
*
* @return
*/
void showLookupTable ()
{
ShowLookupTable();
}
/**
* @brief Shows the preedit text in UI.
*
* @return
*/
void showPreeditText ()
{
ShowPreeditText();
}
/**
* @brief Updates the auxiliary text.
*
* @param[in] text A text object.
* @param[in] visible Whether the auxiliary text is visible.
* @return
*/
void updateAuxiliaryText (const TextPointer & text, bool visible)
{
QDBusVariant variant;
UpdateAuxiliaryText (qDBusVariantFromSerializable (text, variant), visible);
}
/**
* @brief Updates the lookup table.
*
* @param[in] lookupTable A lookup table object.
* @param[in] visible Whether the lookup table is visible.
* @return
*/
void updateLookupTable (const LookupTablePointer & lookupTable, bool visible)
{
QDBusVariant variant;
UpdateLookupTable (qDBusVariantFromSerializable (lookupTable, variant), visible);
}
/**
* @brief Updates the preedit text.
*
* @param[in] text A text object.
* @param[in] cursorPos The cursor position in the given text.
* @param[in] visible Whether the preedit text is visible.
* @param[in] mode preedit focus mode.
* @return
*/
void updatePreeditText (const TextPointer & text, uint cursorPos, bool visible, uint mode = EnginePreeditClear)
{
QDBusVariant variant;
UpdatePreeditText (qDBusVariantFromSerializable (text, variant), cursorPos, visible, mode);
}
/**
* @brief Updates the property
*
* @param[in] prop A propeerty object
* @return
*/
void updateProperty (const PropertyPointer & prop)
{
QDBusVariant variant;
UpdateProperty (qDBusVariantFromSerializable (prop, variant));
}
public:
/**
* @brief Candidate is clicked.
*
* Implement this virtual function to handle candidate clicked event.
* @param[in] index The index of candidate clicked
* @param[in] button The button of the clicked event.
* @param[in] state The current state of keyboard.
* @return
*/
virtual void candidateClicked (uint index, uint button, uint state);
/**
* @brief Cursor is moved down.
*
* @return
*/
virtual void cursorDown ();
/**
* @brief Cursor is moved up.
*
* @return
*/
virtual void cursorUp ();
virtual void destroy ();
/**
* @brief Disables the engine.
*
* @return
*/
virtual void disable ();
/**
* @brief Enables the engine.
*
* @return
*/
virtual void enable ();
/**
* @brief Sets the focus of the engine.
*
* @return
*/
virtual void focusIn ();
/**
* @brief Unsets the focus of the engine.
*
* @return
*/
virtual void focusOut ();
/**
* @brief Moves cursor of lookup table to next page.
*
* @return
*/
virtual void pageDown ();
/**
* @brief Moves cursor of lookup tabele to previous page.
*
* @return
*/
virtual void pageUp ();
/**
* @brief Moves cursor of lookup tabele to previous page.
*
* @param[in] keyval The keyval of the key event.
* @param[in] keycode The keycode of the key event.
* @param[in] state The modifiers of the key event.
* @return If engine returns true, the client application will ignore this key event,
* otherwise client application will continue process this key event.
*/
virtual bool processKeyEvent (uint keyval, uint keycode, uint state);
/**
* @brief The property with given name is clicked.
*
* @param[in] prop_name The name of the property.
* @param[in] prop_state The state of the property.
* @return
*/
virtual void propertyActivate (const QString &prop_name, int prop_state);
/**
* @brief Hides the property with given name.
*
* @param[in] prop_name The name of the property.
* @return
*/
virtual void propertyHide (const QString &prop_name);
/**
* @brief Shows the property with given name.
*
* @param[in] prop_name The name of the property.
* @return
*/
virtual void propertyShow (const QString &prop_name);
/**
* @brief Resets the engine.
*
* @return
*/
virtual void reset ();
/**
* @brief Sets the capabilities from client application.
*
* @param[in] cap The capabilities of client application.
* @return
*/
virtual void setCapabilities (uint cap);
/**
* @brief Sets the cursor location from client applicaion.
*
* @param[in] x
* @param[in] y
* @param[in] w
* @param[in] h
* @return
*/
virtual void setCursorLocation (int x, int y, int w, int h);
private Q_SLOTS:
Q_INVOKABLE void CandidateClicked (uint index, uint button, uint state);
Q_INVOKABLE void CursorDown ();
Q_INVOKABLE void CursorUp ();
Q_INVOKABLE void Destroy ();
Q_INVOKABLE void Disable ();
Q_INVOKABLE void Enable ();
Q_INVOKABLE void FocusIn ();
Q_INVOKABLE void FocusOut ();
Q_INVOKABLE void PageDown ();
Q_INVOKABLE void PageUp ();
Q_INVOKABLE bool ProcessKeyEvent (uint keyval, uint keycode, uint state);
Q_INVOKABLE void PropertyActivate (const QString &prop_name, int prop_state);
Q_INVOKABLE void PropertyHide (const QString &prop_name);
Q_INVOKABLE void PropertyShow (const QString &prop_name);
Q_INVOKABLE void Reset ();
Q_INVOKABLE void SetCapabilities (uint cap);
Q_INVOKABLE void SetCursorLocation (int x, int y, int w, int h);
Q_SIGNALS :
/**
* FIXME need hide signals in doxygen
*/
void CommitText (const QDBusVariant &text);
void CursorDownLookupTable ();
void CursorUpLookupTable ();
void ForwardKeyEvent (uint keyval, uint keycode, uint state);
void HideAuxiliaryText ();
void HideLookupTable ();
void HidePreeditText ();
void PageDownLookupTable ();
void PageUpLookupTable ();
void RegisterProperties (const QDBusVariant &props);
void ShowAuxiliaryText ();
void ShowLookupTable ();
void ShowPreeditText ();
void UpdateAuxiliaryText (const QDBusVariant &text, bool visible);
void UpdateLookupTable (const QDBusVariant &lookup_table, bool visible);
void UpdatePreeditText (const QDBusVariant &text, uint cursor_pos, bool visible, uint mode);
void UpdateProperty (const QDBusVariant &prop);
private :
QString m_engineName;
IBusEngineAdaptor *m_adaptor;
};
};
#endif
|