Home · API Reference · Modules
Classes | Signals | Public Member Functions
MAbstractInputMethod Class Reference

List of all members.

Classes

struct  MInputMethodSubView

Signals

void activeSubViewChanged (const QString &subViewId, Maliit::HandlerState state=Maliit::OnScreen)

Public Member Functions

 MAbstractInputMethod (MAbstractInputMethodHost *host)
virtual ~MAbstractInputMethod ()
MAbstractInputMethodHostinputMethodHost () const
virtual void show ()
virtual void hide ()
virtual void setPreedit (const QString &preeditString, int cursorPos)
virtual void update ()
virtual void reset ()
virtual void handleMouseClickOnPreedit (const QPoint &pos, const QRect &preeditRect)
virtual void handleFocusChange (bool focusIn)
virtual void handleVisualizationPriorityChange (bool priority)
virtual void handleAppOrientationAboutToChange (int angle)
virtual void handleAppOrientationChanged (int angle)
virtual void processKeyEvent (QEvent::Type keyType, Qt::Key keyCode, Qt::KeyboardModifiers modifiers, const QString &text, bool autoRepeat, int count, quint32 nativeScanCode, quint32 nativeModifiers, unsigned long time)
virtual void setState (const QSet< Maliit::HandlerState > &state)
virtual void handleClientChange ()
virtual void switchContext (Maliit::SwitchDirection direction, bool enableAnimation)
virtual QList
< MInputMethodSubView > 
subViews (Maliit::HandlerState state=Maliit::OnScreen) const
virtual void showLanguageNotification ()
virtual void setKeyOverrides (const QMap< QString, QSharedPointer< MKeyOverride > > &overrides)
virtual bool imExtensionEvent (MImExtensionEvent *event)

Detailed Description

A base class for input methods.

Defines the interface which input method framework uses for passing commands received from the applications to plugins. Communication in the other direction, from the input method plugin to the framework, is done using the MAbstractInputMethodHost object returned from inputMethodHost().


Constructor & Destructor Documentation

Constructor

Parameters:
hostserves as communication link to framework and application. Managed by framework.

Member Function Documentation

void MAbstractInputMethod::activeSubViewChanged ( const QString &  subViewId,
Maliit::HandlerState  state = Maliit::OnScreen 
) [signal]

Inform that active subview is changed to subViewId for state.

Must be emitted when plugin changes the active subview for specified state.

Parameters:
subViewIdthe identifier of the new subview.
statethe state which subViewId belongs to.

Target application is about to change orientation.

The input method usually changes its own orientation according to this. Note that this method might not be called when the input method shown for the first time.

See also:
handleAppOrientationChanged(int angle)
Parameters:
angleThe angle in degrees. Possible values: 0, 90, 180, 270. 0 is the normal orientation of the display server.

Target application already finish changing orientation.

Parameters:
angleThe angle in degrees. Possible values: 0, 90, 180, 270. 0 is the normal orientation of the display server.

This method is called when target client (application) has changed.

void MAbstractInputMethod::handleFocusChange ( bool  focusIn) [virtual]

Notifies input method about focus changes on application side.

Reimplementhing this method is optional.

Parameters:
focusIntrue - focus has entered a widget, false - focus has left a widget
void MAbstractInputMethod::handleMouseClickOnPreedit ( const QPoint &  pos,
const QRect &  preeditRect 
) [virtual]

Notifies input method about mouse click on the preedit string.

Reimplementing this method is optional. It is used by Meego Keyboard.

Notifies that the focus widget in application changed visualization priority.

This method is used by the framework to allow the input method to be dismissed while a widget is focused. Further calls to show() when priority is true should not show the input method. When priority is set to false again, and the input method is not in hidden state, the input method should be shown.

Parameters:
priorityIf true, the application has priority, and the input method should not be shown.
void MAbstractInputMethod::hide ( ) [virtual]

Hide request.

The input method must hide itself when this is called.

handles extension event not covered by a dedicated method.

Must return true if event is handled, otherwise false. Extensions can be registered on the application side, and will be passed through to the input method, allowing to add integration points between application and input method. Reimplementing this method is optional.

Parameters:
eventevent to handle

Returns input method host.

void MAbstractInputMethod::processKeyEvent ( QEvent::Type  keyType,
Qt::Key  keyCode,
Qt::KeyboardModifiers  modifiers,
const QString &  text,
bool  autoRepeat,
int  count,
quint32  nativeScanCode,
quint32  nativeModifiers,
unsigned long  time 
) [virtual]

Process a key event redirected from hardware keyboard to input method.

This is called only if one has enabled redirection by calling MInputContextConnection::setRedirectKeys.

Reimplementing this method is optional. It can be used to implement input methods that handle hardware keyboard.

void MAbstractInputMethod::reset ( ) [virtual]

Reset notification.

void MAbstractInputMethod::setKeyOverrides ( const QMap< QString, QSharedPointer< MKeyOverride > > &  overrides) [virtual]

Uses custom key overrides which are defined by given parameter.

Reimplementing this method is optional. It is used in Meego Keyboard to provide context aware keys that can be customized from the application side.

Parameters:
overridesPointer to key override definitions. An empty map means that no key override exists, and that the normal values should be used.
void MAbstractInputMethod::setPreedit ( const QString &  preeditString,
int  cursorPos 
) [virtual]

Notifies input method about predit string changes.

This method informs the input method about preedit and the cursor position. The input method can fully control the preedit and the cursor inside it: whether and where to show cursor inside preedit, and how the preedit string should be styled.

See also:
MAbstractInputMethodHost::sendPreeditString()
Parameters:
preeditStringpreedit string
cursorPosthe cursor position inside preedit.
void MAbstractInputMethod::setState ( const QSet< Maliit::HandlerState > &  state) [virtual]

This method is called to inform about keyboard status changes.

For example: Hardware keyboard is opened or closed, BT keyboard is connected or disconnected.

Parameters:
stateset of current states for this plugin
void MAbstractInputMethod::show ( ) [virtual]

Show request.

The input method should normally show its UI on this call, unless handleVisualizationPriorityChange(bool) was called with a true value.

See also:
handleVisualizationPriorityChange(bool)

Show notification to user informing about current language/subview.

Reimplementing this method is optional.

QList< MAbstractInputMethod::MInputMethodSubView > MAbstractInputMethod::subViews ( Maliit::HandlerState  state = Maliit::OnScreen) const [virtual]

Returns all subviews (IDs and titles) which are supported for state.

Implement this function to return the subviews which are supported by this input method for the specified state. An input method must return at least one subview for a supported state.

void MAbstractInputMethod::switchContext ( Maliit::SwitchDirection  direction,
bool  enableAnimation 
) [virtual]

Switch context to given direction.

If the input method arranges the subviews horizontally (like Meego Keyboard does) it should first try to change its subviews in the direction indicated. If there are no more subviews in the given direction, MInputMethodHost::switchPlugin(Maliit::SwitchDirection ) should be called.

Parameters:
directionSwitching direction
enableAnimationContains true if swipe should be animated
void MAbstractInputMethod::update ( ) [virtual]

State update notification.

General update notification. Called in addition to the specific methods.


Copyright © 2011 Nokia Corporation
Maliit