diff options
author | Alexis Menard <alexis.menard@nokia.com> | 2009-04-17 14:06:06 (GMT) |
---|---|---|
committer | Alexis Menard <alexis.menard@nokia.com> | 2009-04-17 14:06:06 (GMT) |
commit | f15b8a83e2e51955776a3f07cb85ebfc342dd8ef (patch) | |
tree | c5dc684986051654898db11ce73e03b9fec8db99 /doc/src/emb-charinput.qdoc | |
download | Qt-f15b8a83e2e51955776a3f07cb85ebfc342dd8ef.zip Qt-f15b8a83e2e51955776a3f07cb85ebfc342dd8ef.tar.gz Qt-f15b8a83e2e51955776a3f07cb85ebfc342dd8ef.tar.bz2 |
Initial import of statemachine branch from the old kinetic repository
Diffstat (limited to 'doc/src/emb-charinput.qdoc')
-rw-r--r-- | doc/src/emb-charinput.qdoc | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/doc/src/emb-charinput.qdoc b/doc/src/emb-charinput.qdoc new file mode 100644 index 0000000..e38ebe3 --- /dev/null +++ b/doc/src/emb-charinput.qdoc @@ -0,0 +1,126 @@ +/**************************************************************************** +** +** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). +** Contact: Qt Software Information (qt-info@nokia.com) +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the either Technology Preview License Agreement or the +** Beta Release License Agreement. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain +** additional rights. These rights are described in the Nokia Qt LGPL +** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this +** package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** If you are unsure which license is appropriate for your use, please +** contact the sales department at qt-sales@nokia.com. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \page qt-embedded-charinput.html + + \title Qt for Embedded Linux Character Input + \ingroup qt-embedded-linux + + When running a \l {Qt for Embedded Linux} application, it either runs as a + server or connects to an existing server. The keyboard driver is + loaded by the server application when it starts running, using + Qt's \l {How to Create Qt Plugins}{plugin system}. + + Internally in the client/server protocol, all system generated + events, including key events, are passed to the server application + which then propagates the event to the appropriate client. Note + that key events do not always come from a keyboard device, they + can can also be generated by the server process using input + widgets. + + \table + \header \o Input Widgets + \row + \o + + The server process may call the static QWSServer::sendKeyEvent() + function at any time. Typically, this is done by popping up a + widget that enables the user specify characters with the pointer + device. + + Note that the key input widget should not take focus since the + server would then just send the key events back to the input + widget. One way to make sure that the input widget never takes + focus is to set the Qt::Tool widget flag in the QWidget + constructor. + + The \l{Qt Extended} environment contains various input widgets such as + Handwriting Recognition and Virtual Keyboard. + + \endtable + + \tableofcontents + + \section1 Available Keyboard Drivers + + \l {Qt for Embedded Linux} provides ready-made drivers for the SL5000, Yopy, + Vr41XX, console (TTY) and USB protocols. Run the \c configure + script to list the available drivers: + + \snippet doc/src/snippets/code/doc_src_emb-charinput.qdoc 0 + + Note that the console keyboard driver also handles console + switching (\bold{Ctrl+Alt+F1}, ..., \bold{Ctrl+Alt+F10}) and + termination (\bold{Ctrl+Alt+Backspace}). + + In the default Qt configuration, only the "TTY" driver is + enabled. The various drivers can be enabled and disabled using the + \c configure script. For example: + + \snippet doc/src/snippets/code/doc_src_emb-charinput.qdoc 1 + + Custom keyboard drivers can be implemented by subclassing the + QWSKeyboardHandler class and creating a keyboard driver plugin + (derived from the QKbdDriverPlugin class). The default + implementation of the QKbdDriverFactory class will automatically + detect the plugin, loading the driver into the server application + at run-time. + + \section1 Specifying a Keyboard Driver + + To specify which driver to use, set the QWS_KEYBOARD environment + variable. For example (if the current shell is bash, ksh, zsh or + sh): + + \snippet doc/src/snippets/code/doc_src_emb-charinput.qdoc 2 + + The \c <driver> argument are \c SL5000, \c Yopy, \c VR41xx, \c + TTY, \c USB and \l {QKbdDriverPlugin::keys()}{keys} identifying + custom drivers, and the driver specific options are typically a + device, e.g., \c /dev/tty0. + + Multiple keyboard drivers can be specified in one go: + + \snippet doc/src/snippets/code/doc_src_emb-charinput.qdoc 3 + + Input will be read from all specified drivers. +*/ |