Symbian Developer Library

SYMBIAN OS V6.1 EDITION FOR C++

[Index] [Glossary] [Previous] [Next]



Front End Processor Overview


Purpose

Provides a framework for components that enable the input of characters not supported directly by the keyboard (if present). This includes hand-writing and voice input.

[Top]


Architectural relationships

FEPs are polymorphic DLLs that implement the FEP interface. They typically use the control framework defined in the UI Control Framework to intercept key and pointer events. These are processed as necessary, and the output is sent to the application. Applications receiving this do not need to be aware that a FEP is present.

[Top]


Description

The API has five key concepts: FEP base, control input-capabilities, FEP-aware text editors, foreground observer, and focus observer.


FEP Base

The FEP base is the abstract base class from which a FEP is derived. It is typically implemented to have a window, and a control, the primary EPOC abstraction for screen areas that receive input events. The UI Control Framework has the concept of a control stack to determine the order in which controls are offered key events. A FEP puts its control with a high priority at the top of the control stack, so that it has first access to key events. The Window Server provides support for windows that float above other windows in the application.

Each running application has its own instance of the current FEP. Support is provided though for synchronising attributes across all of these instances.

The FEP base class is CCoeFep.


Control input-capabilities

A FEP can read the input-capabilities of the target control(s) to determine what output is appropriate. This is provided by TCoeInputCapabilities.


FEP-aware text editors

A text-editing control can be designed to be closely integrated with a FEP by implementing MCoeFepAwareTextEditor. CEikEdwin, for example, implements this interface.


Foreground observer

A FEP can implement an observer to be notified when the application goes into the foreground or background. The foreground observer is MCoeForegroundObserver.


Focus observer

A FEP can implement an observer to be notified when controls under the FEP gain or lose focus. The FEP can then discover the input-capabilities of the current target control(s). The focus observer is MCoeFocusObserver.

[Top]


See also

UI Control Framework Overview