QWSInputMethod

Section: Misc. Reference Manual Pages (3qt)
Updated: 2 February 2007
Index Return to Main Contents
 

NAME

QWSInputMethod - International input methods for Qt/Embedded  

SYNOPSIS

#include <qwindowsystem_qws.h>

 

Public Members


QWSInputMethod ()

virtual ~QWSInputMethod ()

virtual bool filter ( int unicode, int keycode, int modifiers, bool isPress, bool autoRepeat ) = 0

virtual void reset ()

virtual void setMicroFocus ( int x, int y )

virtual void setFont ( const QFont & )
 

Protected Members


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

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 IMStart event, followed by a number of IMCompose events and ending with an IMEnd event or when the virtual reset() function is called.

The functions setMicroFocus() and setFont() can be reimplemented to receive more information about the state of the focus widget.

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

See also Qt/Embedded.  

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 IMStart and IMEnd).  

void QWSInputMethod::reset () [virtual]

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

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::IMStart, QWSServer::IMCompose or QWSServer::IMEnd.

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

If state is IMCompose, 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::setFont ( const QFont & ) [virtual]

Implemented in subclasses to handle font changes in the focus widget.

This functionality is provided for future expansion; it is not used in this version of Qt/Embedded.  

void QWSInputMethod::setMicroFocus ( int x, int y ) [virtual]

Implemented in subclasses to handle microFocusHint changes in the focus widget. x and y are the global coordinates of the text cursor.

 

SEE ALSO

http://doc.trolltech.com/qwsinputmethod.html http://www.trolltech.com/faq/tech.html  

COPYRIGHT

Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the license file included in the distribution for a complete license statement.  

AUTHOR

Generated automatically from the source code.  

BUGS

If you find a bug in Qt, please report it as described in http://doc.trolltech.com/bughowto.html. Good bug reports help us to help you. Thank you. The definitive Qt documentation is provided in HTML format; it is located at $QTDIR/doc/html and can be read using Qt Assistant or with a web browser. This man page is provided as a convenience for those users who prefer man pages, although this format is not officially supported by Trolltech. If you find errors in this manual page, please report them to qt-bugs@trolltech.com. Please include the name of the manual page (qwsinputmethod.3qt) and the Qt version (3.3.8).