Home · All Classes · Main Classes · Annotated · Grouped Classes · Functions

QWSInputMethod Class Reference

The QWSInputMethod class provides international input methods for Qt/Embedded. More...

#include <QWSInputMethod>

Part of the QtGui module.

Inherits QObject.

Public Functions

Protected Functions

Additional Inherited Members


Detailed Description

The QWSInputMethod class provides international input methods for Qt/Embedded.

Subclass this class to implement your own input method.

An input methods consists of a keyboard filter and optionally a graphical interface. The keyboard filter intercepts key events from physical or virtual keyboards by implementing the filter() function.

Use sendIMEvent() to send composition events. Composition starts with the input method sending an InputMethodStart event, followed by a number of InputMethodCompose events and ending with an InputMethodEnd event or when the virtual reset() function is called.

The function setMicroFocus() is called when the focus widget changes its cursor position.

The functions font() and inputRect() provide more information about the state of the focus widget.

Use QWSServer::setCurrentInputMethod() to install an input method.


Member Function Documentation

QWSInputMethod::QWSInputMethod ()

Constructs a new input method

QWSInputMethod::~QWSInputMethod ()   [virtual]

Destructs the input method uninstalling it if it is currently installed.

bool QWSInputMethod::filter ( int unicode, int keycode, int modifiers, bool isPress, bool autoRepeat )   [pure virtual]

This function must be implemented in subclasses to handle key input from physical or virtual keyboards. Returning true will block the event from further processing.

The Unicode value is given in unicode and the key code in keycode. Keyboard modifiers are OR-ed together in modifiers. If isPress is true this is a key press; otherwise it is a key release. If autoRepeat is true this is an auto-repeated key press.

All normal key events should be blocked while in compose mode (i.e., between InputMethodStart and InputMethodEnd).

void QWSInputMethod::mouseHandler ( int x, int state )   [virtual]

Implemented in subclasses to handle mouse presses/releases within the preedit text. The parameter x is the offset within the string that was sent with the InputMethodCompose event. state is either QWSServer::MousePress or QWSServer::MouseRelease

if state < 0 then the mouse event is inside the widget, but outside the preedit text

QWSServer::MouseOutside is sent when clicking in a different widget.

The default implementation resets the input method on all mouse presses.

void QWSInputMethod::reset ()   [virtual]

Implemented in subclasses to reset the state of the input method.

The default implementation calls sendIMEvent() with empty preedit and commit strings, if the input method is in compose mode.

void QWSInputMethod::responseHandler ( int, const QVariant & )   [virtual]

void QWSInputMethod::sendIMEvent ( QWSServer::IMState state, const QString & txt, int cpos, int selLen = 0 )   [protected]

Causes a QIMEvent to be sent to the focus widget. state may be one of QWSServer::InputMethodStart, QWSServer::InputMethodCompose or QWSServer::InputMethodEnd.

txt is the text being composed (or the finished text if state is InputMethodEnd). cpos is the current cursor position.

If state is InputMethodCompose, selLen is the number of characters in the composition string (starting at cpos) that should be marked as selected by the input widget receiving the event.

void QWSInputMethod::sendIMQuery ( int property )   [protected]

void QWSInputMethod::updateHandler ( int )   [virtual]


Copyright © 2005 Trolltech Trademarks
Qt 4.0.0-b2