Qt 4.8
qinputcontext.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 QtGui module 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 QInputContext class
45 **
46 ** Copyright (C) 2003-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 QINPUTCONTEXT_H
57 #define QINPUTCONTEXT_H
58 
59 #include <QtCore/qobject.h>
60 #include <QtCore/qglobal.h>
61 #include <QtCore/qconfig.h>
62 #include <QtGui/qevent.h>
63 #include <QtCore/qstring.h>
64 #include <QtCore/qlist.h>
65 #include <QtGui/qaction.h>
66 
67 #ifndef QT_NO_IM
68 
70 
72 
73 QT_MODULE(Gui)
74 
75 class QWidget;
76 class QFont;
77 class QPopupMenu;
79 #ifdef Q_OS_SYMBIAN
80 class QSymbianEvent;
81 #endif
82 
84 {
85  Q_OBJECT
87 public:
88  explicit QInputContext(QObject* parent = 0);
89  virtual ~QInputContext();
90 
91  virtual QString identifierName() = 0;
92  virtual QString language() = 0;
93 
94  virtual void reset() = 0;
95  virtual void update();
96 
97  virtual void mouseHandler( int x, QMouseEvent *event);
98  virtual QFont font() const;
99  virtual bool isComposing() const = 0;
100 
101  QWidget *focusWidget() const;
102  virtual void setFocusWidget( QWidget *w );
103 
104  virtual void widgetDestroyed(QWidget *w);
105 
106  virtual QList<QAction *> actions();
107 
108 #if defined(Q_WS_X11)
109  virtual bool x11FilterEvent( QWidget *keywidget, XEvent *event );
110 #endif // Q_WS_X11
111 #if defined(Q_OS_SYMBIAN)
112  virtual bool symbianFilterEvent( QWidget *keywidget, const QSymbianEvent *event );
113 #endif // Q_OS_SYMBIAN
114  virtual bool filterEvent( const QEvent *event );
115 
116  void sendEvent(const QInputMethodEvent &event);
117 
121  };
122  QTextFormat standardFormat(StandardFormat s) const;
123 private:
124  friend class QWidget;
125  friend class QWidgetPrivate;
126  friend class QInputContextFactory;
127  friend class QApplication;
128 private: // Disabled copy constructor and operator=
129  QInputContext( const QInputContext & );
130  QInputContext &operator=( const QInputContext & );
131 
132 };
133 
135 
137 
138 #endif //Q_NO_IM
139 
140 #endif // QINPUTCONTEXT_H
The QApplication class manages the GUI application&#39;s control flow and main settings.
Definition: qapplication.h:99
#define QT_END_NAMESPACE
This macro expands to.
Definition: qglobal.h:90
EventRef event
#define QT_MODULE(x)
Definition: qglobal.h:2783
#define QT_BEGIN_HEADER
Definition: qglobal.h:136
#define Q_GUI_EXPORT
Definition: qglobal.h:1450
Q_CORE_EXPORT QTextStream & reset(QTextStream &s)
The QWidget class is the base class of all user interface objects.
Definition: qwidget.h:150
The QString class provides a Unicode character string.
Definition: qstring.h:83
The QObject class is the base class of all Qt objects.
Definition: qobject.h:111
The QInputContextFactory class creates QInputContext objects.
union _XEvent XEvent
Definition: qwindowdefs.h:116
QLocale::Language language
#define QT_BEGIN_NAMESPACE
This macro expands to.
Definition: qglobal.h:89
The QTextFormat class provides formatting information for a QTextDocument.
Definition: qtextformat.h:129
friend class QInputContext
Definition: qapplication.h:413
#define Q_OBJECT
Definition: qobjectdefs.h:157
The QMouseEvent class contains parameters that describe a mouse event.
Definition: qevent.h:85
The QInputMethodEvent class provides parameters for input method events.
Definition: qevent.h:431
The QFont class specifies a font used for drawing text.
Definition: qfont.h:64
#define Q_DECLARE_PRIVATE(Class)
Definition: qglobal.h:2467
The QInputContext class abstracts the input method dependent data and composing state.
Definition: qinputcontext.h:83
The QEvent class is the base class of all event classes.
Definition: qcoreevent.h:56
#define QT_END_HEADER
Definition: qglobal.h:137
The QList class is a template class that provides lists.
Definition: qdatastream.h:62