Home · All Namespaces · All Classes · Grouped Classes · Modules · Functions codeless banner

Qt Extended Input Methods: Class Overview


There are three broad sections to Qt Extended Input Methods:

  1. The Qt Extended 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 Qt Extended 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.


This is the Qt Extended 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


This is the starting point for any input method for Qt Extended. 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 Qt Extended down to implementing a simple interface. It defines several core comunicative functions used by the Qt Extended 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 Qt Extended will find and load it at run time, and add it to the input method menu.

For a detailed description, see QtopiaInputMethod


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 © 2009 Nokia Trademarks
Qt Extended 4.4.3