Qt 4.8
qmultiinputcontext.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
4 ** Contact: http://www.qt-project.org/legal
5 **
6 ** This file is part of the plugins of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia. For licensing terms and
14 ** conditions see http://qt.digia.com/licensing. For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Digia gives you certain additional
26 ** rights. These rights are described in the Digia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** GNU General Public License Usage
30 ** Alternatively, this file may be used under the terms of the GNU
31 ** General Public License version 3.0 as published by the Free Software
32 ** Foundation and appearing in the file LICENSE.GPL included in the
33 ** packaging of this file. Please review the following information to
34 ** ensure the GNU General Public License version 3.0 requirements will be
35 ** met: http://www.gnu.org/copyleft/gpl.html.
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41 
42 /****************************************************************************
43 **
44 ** Definition of QMultiInputContext class
45 **
46 ** Copyright (C) 2004 immodule for Qt Project. All rights reserved.
47 **
48 ** This file is written to contribute to Nokia Corporation and/or its subsidiary(-ies) under their own
49 ** license. You may use this file under your Qt license. Following
50 ** description is copied from their original file headers. Contact
51 ** immodule-qt@freedesktop.org if any conditions of this licensing are
52 ** not clear to you.
53 **
54 ****************************************************************************/
55 
56 #ifndef QMULTIINPUTCONTEXT_H
57 #define QMULTIINPUTCONTEXT_H
58 
59 #ifndef QT_NO_IM
60 
61 #include <QtGui/qwidget.h>
62 #include <QtGui/qinputcontext.h>
63 #include <QtCore/qstring.h>
64 #include <QtCore/qnamespace.h>
65 #include <QtCore/qmap.h>
66 #include <QtCore/qpointer.h>
67 #include <QtCore/qlist.h>
68 
70 
72 {
73  Q_OBJECT
74 public:
77 
79  QString language();
80 
81 #if defined(Q_WS_X11)
82  bool x11FilterEvent( QWidget *keywidget, XEvent *event );
83 #endif // Q_WS_X11
84  bool filterEvent( const QEvent *event );
85 
86  void reset();
87  void update();
88  void mouseHandler( int x, QMouseEvent *event );
89  QFont font() const;
90  bool isComposing() const;
91 
93 
94  QWidget *focusWidget() const;
95  void setFocusWidget(QWidget *w);
96 
97  void widgetDestroyed( QWidget *w );
98 
100  const QInputContext *slave() const { return slaves.at(current); }
101 
102 protected Q_SLOTS:
103  void changeSlave(QAction *);
104 private:
105  void *unused;
106  int current;
111 };
112 
113 #endif // Q_NO_IM
114 
116 
117 #endif // QMULTIINPUTCONTEXT_H
void update()
This virtual function is called when a state in the focus widget has changed.
const QInputContext * slave() const
#define QT_END_NAMESPACE
This macro expands to.
Definition: qglobal.h:90
void setFocusWidget(QWidget *w)
Sets the widget that has an input focus for this input context.
The QWidget class is the base class of all user interface objects.
Definition: qwidget.h:150
#define Q_SLOTS
Definition: qobjectdefs.h:71
QString identifierName()
This function must be implemented in any subclasses to return the identifier name of the input method...
The QString class provides a Unicode character string.
Definition: qstring.h:83
virtual bool event(QEvent *)
This virtual function receives events to an object and should return true if the event e was recogniz...
Definition: qobject.cpp:1200
void widgetDestroyed(QWidget *w)
This virtual function is called when the specified widget is destroyed.
union _XEvent XEvent
Definition: qwindowdefs.h:116
QFont font() const
Returns the font of the current input widget.
QList< QAction * > actions()
This is a preliminary interface for Qt 4.
#define QT_BEGIN_NAMESPACE
This macro expands to.
Definition: qglobal.h:89
QInputContext * slave()
QString language()
This function must be implemented in any subclasses to return a language code (e. ...
const T & at(int i) const
Returns the item at index position i in the list.
Definition: qlist.h:468
The QStringList class provides a list of strings.
Definition: qstringlist.h:66
QList< QInputContext * > slaves
void mouseHandler(int x, QMouseEvent *event)
This function can be reimplemented in a subclass to handle mouse press, release, double-click, and move events within the preedit text.
#define Q_OBJECT
Definition: qobjectdefs.h:157
The QMouseEvent class contains parameters that describe a mouse event.
Definition: qevent.h:85
bool filterEvent(const QEvent *event)
This function can be reimplemented in a subclass to filter input events.
The QMenu class provides a menu widget for use in menu bars, context menus, and other popup menus...
Definition: qmenu.h:72
The QFont class specifies a font used for drawing text.
Definition: qfont.h:64
bool isComposing() const
This function indicates whether InputMethodStart event had been sent to the current focus widget...
The QInputContext class abstracts the input method dependent data and composing state.
Definition: qinputcontext.h:83
void reset()
This function can be reimplemented in a subclass to reset the state of the input method.
The QEvent class is the base class of all event classes.
Definition: qcoreevent.h:56
QWidget * focusWidget() const
void changeSlave(QAction *)
bool x11FilterEvent(QWidget *keywidget, XEvent *event)
This function may be overridden only if input method is depending on X11 and you need raw XEvent...
The QAction class provides an abstract user interface action that can be inserted into widgets...
Definition: qaction.h:64
The QList class is a template class that provides lists.
Definition: qdatastream.h:62