| Home · API Reference · Modules

Classes | Signals | Public Member Functions | List of all members
MAbstractInputMethod Class Reference
Plugin API

`#include <abstractinputmethod.h>`

Inheritance diagram for MAbstractInputMethod:
[legend]

## Classes

struct | MInputMethodSubView

## Signals

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

## Public Member Functions

| MAbstractInputMethod (MAbstractInputMethodHost *host)
virtual | ~MAbstractInputMethod ()
MAbstractInputMethodHost * | inputMethodHost () 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

## ◆ MAbstractInputMethod()

MAbstractInputMethod::MAbstractInputMethod | ( | MAbstractInputMethodHost * | host | ) |

explicit

Constructor

Parameters

  host | serves as communication link to framework and application. Managed by framework.

## ◆ ~MAbstractInputMethod()

MAbstractInputMethod::~MAbstractInputMethod | ( |  | ) |

virtual

## Member Function Documentation

## ◆ activeSubViewChanged

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

  subViewId | the identifier of the new subview.
  state | the state which subViewId belongs to.

## ◆ handleAppOrientationAboutToChange()

void MAbstractInputMethod::handleAppOrientationAboutToChange | ( | int | angle | ) |

virtual

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

  angle | The angle in degrees, clockwise. Possible values: 0, 90, 180, 270. 0 is the normal orientation of the display server.

## ◆ handleAppOrientationChanged()

void MAbstractInputMethod::handleAppOrientationChanged | ( | int | angle | ) |

virtual

Target application already finish changing orientation.

Parameters

  angle | The angle in degrees, clockwise. Possible values: 0, 90, 180, 270. 0 is the normal orientation of the display server.

## ◆ handleClientChange()

void MAbstractInputMethod::handleClientChange | ( |  | ) |

virtual

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

## ◆ handleFocusChange()

void MAbstractInputMethod::handleFocusChange | ( | bool | focusIn | ) |

virtual

Notifies input method about focus changes on application side.

Reimplementhing this method is optional.

Parameters

  focusIn | true - focus has entered a widget, false - focus has left a widget

## ◆ handleMouseClickOnPreedit()

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.

## ◆ handleVisualizationPriorityChange()

void MAbstractInputMethod::handleVisualizationPriorityChange | ( | bool | priority | ) |

virtual

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

  priority | If true, the application has priority, and the input method should not be shown.

## ◆ hide()

void MAbstractInputMethod::hide | ( |  | ) |

virtual

Hide request.

The input method must hide itself when this is called.

## ◆ imExtensionEvent()

bool MAbstractInputMethod::imExtensionEvent | ( | MImExtensionEvent * | event | ) |

virtual

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

  event | event to handle

## ◆ inputMethodHost()

MAbstractInputMethodHost * MAbstractInputMethod::inputMethodHost | ( |  | ) | const

Returns input method host.

## ◆ processKeyEvent()

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.

## ◆ reset()

void MAbstractInputMethod::reset | ( |  | ) |

virtual

Reset notification.

## ◆ setKeyOverrides()

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

  overrides | Pointer to key override definitions. An empty map means that no key override exists, and that the normal values should be used.

## ◆ setPreedit()

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

  preeditString | preedit string
  cursorPos | the cursor position inside preedit.

## ◆ setState()

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

  state | set of current states for this plugin

## ◆ show()

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)

## ◆ showLanguageNotification()

void MAbstractInputMethod::showLanguageNotification | ( |  | ) |

virtual

Show notification to user informing about current language/subview.

Reimplementing this method is optional.

## ◆ subViews()

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.

## ◆ switchContext()

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

  direction | Switching direction
  enableAnimation | Contains true if swipe should be animated

## ◆ update()

void MAbstractInputMethod::update | ( |  | ) |

virtual

State update notification.

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

Copyright © 2011 Nokia Corporation |  | Maliit