Meego Wiki
Views

Maliit/Documentation

From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
(Add documentation status)
(FAQ: add an entry)
Line 25: Line 25:
== FAQ ==
== FAQ ==
Frequently asked questions.
Frequently asked questions.
 +
 +
'''1. How to write my own input method?'''<br>
 +
For developing an input method plugin, the primary interface is Qt and C++. The most relevant classes are: [https://meego.gitorious.org/meegotouch/meegotouch-inputmethodframework/blobs/master/src/minputmethodplugin.h MInputMethodPlugin],
 +
[https://meego.gitorious.org/meegotouch/meegotouch-inputmethodframework/blobs/master/src/mabstractinputmethod.h MAbstractInputMethod] and [https://meego.gitorious.org/meegotouch/meegotouch-inputmethodframework/blobs/master/src/mabstractinputmethodhost.h MAbstractInputMethodHost].
 +
 +
Since version 0.20.9-1 of the framework, the MInputMethodQuick API allows one to also easily write input
 +
methods using QML. See the [https://meego.gitorious.org/meegotouch/meegotouch-inputmethodkeyboard/trees/master/meego-keyboard-quick MeegoKeyboardQuick code] for an example.
 +
As of May 2011 this interface is not yet feature complete with the C++ one. Contributions welcomed.
=== Unanswered questions ===
=== Unanswered questions ===

Revision as of 14:27, 23 May 2011

Maliit - Input Methods for MeeGo
Overview · Development · Installing · Roadmap

Contents

Feature documentation

See Maliit#Features

API documentation

Some of the documentation is slighly outdated, and we are working to improve this. Use our communication channels if there are any issues.

Technical documentation

Blogposts et.c.

FAQ

Frequently asked questions.

1. How to write my own input method?
For developing an input method plugin, the primary interface is Qt and C++. The most relevant classes are: MInputMethodPlugin, MAbstractInputMethod and MAbstractInputMethodHost.

Since version 0.20.9-1 of the framework, the MInputMethodQuick API allows one to also easily write input methods using QML. See the MeegoKeyboardQuick code for an example. As of May 2011 this interface is not yet feature complete with the C++ one. Contributions welcomed.

Unanswered questions

Please add any questions you may have here.

Documentation working area

Here is the working area to keep track of the status of and work on the documentation.

  • Goal: Every aspect of Maliit is well-documented, and the documentation easily accessible.
  • Primary focus is on consumers of Maliit: Third-party developers and integrators

Documentation status

Item Status Description
wiki.meego.com/Maliit 80% Our public webpage/wiki page, starting point for all docs. In pretty good shape
apidocs.meego.com/git-tip 10% Our docs should be shown here. Bug 14382
apidocs.meego.com/1.2 10% Our docs should be shown here. Bug 14994
Overall architecture 30% Some docs exists in framework source tree, but is very outdated
Input Method/framework settings system 0%
Input Method Plugin<->Framework interaction 0% What the interaction concepts are (both user and technical), and what is done on each side to support this
Input Method Framework Window handling 0% Passthrough window, Self-compositing, plugin pixmap drawing, rotation animation. Maybe covered by above item?
Input Method Plugin API 40% Tutorial is outdated. Should provide a well-commented plugin example/skeleton that is built as part of our build (to avoid bitrot)
Input Context DBus API 0%
Toolkit integration concepts 20% Key concepts like pre-edit injection, and widget relocation should be documented. Purpose: make it easy for others to improve toolkit integration, and to bring new people up to date. Widget relocation is documented.
Toolkit integration/support status 10% Implicitly all keyboard features/IM are available for MTF. No documentation about plain Qt, QML, Clutter or Gtk+
Engine interfaces  ? Correction/prediction/suggestion/handwriting, both plugin side and IM side
Feedback framework  ?
Meego Keyboard theming (CSS) 100% Docs in keyboard source tree.
Meego Keyboard layouts 100% Docs in keyboard source tree.
Meego Keyboard features 100% Documented on wiki page.
Maliit - Input Methods for MeeGo
Overview · Development · Installing · Roadmap
Personal tools