Home · All Classes · Grouped Classes · Annotated · Functions

Qtopia Input Methods: Class Overview

Introduction

There are three broad sections to Qtopia Input Methods:

  1. The Qtopia Input Method interface - QtopiaInputMethod
  2. The server side of Input Methods - QWSInputMethod
  3. The Input Method Manager - InputMethods

Every input method plugin must implement the QtopiaInputMethod interface. This is the minimum set of behaviours for any Qtopia input method, providing information to the system about the input method and some basic channels of communication with the system (like menu items).

Most input methods will need some of the more advanced behaviours available through QWSInputMethod. This class is used for filtering and modifying keyEvents and mouseEvents, and also provides preedit string related behaviours for in-place input methods.

QWSInputMethod

This is the Qtopia Core class for input methods. It provides the API required for many input-related things, including a very high priority event filter and functions to create input method events, as well as key and mouse events should they be required.

For a detailed description, see QWSInputMethod

QtopiaInputMethod

This is the starting point for any input method for Qtopia. Derive from this class, and implement all the pure virtual functions and the input method is ready to be made and installed.

QtopiaInputMethod simplifies the process of building a plugin for Qtopia down to implementing a simple interface. It defines several core comunicative functions used by the Qtopia server to determine behaviour and appearance, and allows the resulting binary to be installed by simply dropping it into the image/plugins/inputmethods directory, where qtopia will find and load it at run time, and add it to the input method menu.

For a detailed description, see QtopiaInputMethod

Server-side

Input method developers should not need to modify these classes, but it may help to appreciate how they work.

The Input Method Manager is comprised of several parts, but primarily turns input methods on and off appropriately. It also coordinates multiple input methods. InputMethods is the primary class on the server side. It handles loading of plugins, and showing/hiding and activation/deactivation of the current input method.

The InputMethodSelector encompasses most of the functionality that is visible to the user. It is the actual widget that is made visible to the user as a pop-up menu, allowing selection between installed input methods. It is also responsible for docking widgets on behalf of input methods (causing the space available for applications to be reduced), and handling the current input methods soft-key menu items.

InputMethodService receives and interprets IPC messages and relays them to the InputMethods object, it does no processing itself.

For more detailed information on these specific classes, see InputMethodService.


Copyright © 2008 Nokia Trademarks
Qtopia 4.3.3