2011-04-27 10:05:43 +00:00
|
|
|
/****************************************************************************
|
|
|
|
**
|
2016-01-15 07:08:27 +00:00
|
|
|
** Copyright (C) 2016 The Qt Company Ltd.
|
|
|
|
** Contact: https://www.qt.io/licensing/
|
2011-04-27 10:05:43 +00:00
|
|
|
**
|
|
|
|
** This file is part of the QtCore module of the Qt Toolkit.
|
|
|
|
**
|
2016-01-15 07:08:27 +00:00
|
|
|
** $QT_BEGIN_LICENSE:LGPL$
|
2012-09-19 12:28:29 +00:00
|
|
|
** Commercial License Usage
|
|
|
|
** Licensees holding valid commercial Qt licenses may use this file in
|
|
|
|
** accordance with the commercial license agreement provided with the
|
|
|
|
** Software or, alternatively, in accordance with the terms contained in
|
2015-01-28 08:44:43 +00:00
|
|
|
** a written agreement between you and The Qt Company. For licensing terms
|
2016-01-15 07:08:27 +00:00
|
|
|
** and conditions see https://www.qt.io/terms-conditions. For further
|
|
|
|
** information use the contact form at https://www.qt.io/contact-us.
|
2012-09-19 12:28:29 +00:00
|
|
|
**
|
2011-04-27 10:05:43 +00:00
|
|
|
** GNU Lesser General Public License Usage
|
2012-09-19 12:28:29 +00:00
|
|
|
** Alternatively, this file may be used under the terms of the GNU Lesser
|
2016-01-15 07:08:27 +00:00
|
|
|
** General Public License version 3 as published by the Free Software
|
|
|
|
** Foundation and appearing in the file LICENSE.LGPL3 included in the
|
|
|
|
** packaging of this file. Please review the following information to
|
|
|
|
** ensure the GNU Lesser General Public License version 3 requirements
|
|
|
|
** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
|
2011-04-27 10:05:43 +00:00
|
|
|
**
|
2016-01-15 07:08:27 +00:00
|
|
|
** GNU General Public License Usage
|
|
|
|
** Alternatively, this file may be used under the terms of the GNU
|
|
|
|
** General Public License version 2.0 or (at your option) the GNU General
|
|
|
|
** Public license version 3 or any later version approved by the KDE Free
|
|
|
|
** Qt Foundation. The licenses are as published by the Free Software
|
|
|
|
** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
|
|
|
|
** included in the packaging of this file. Please review the following
|
|
|
|
** information to ensure the GNU General Public License requirements will
|
|
|
|
** be met: https://www.gnu.org/licenses/gpl-2.0.html and
|
|
|
|
** https://www.gnu.org/licenses/gpl-3.0.html.
|
2011-04-27 10:05:43 +00:00
|
|
|
**
|
|
|
|
** $QT_END_LICENSE$
|
|
|
|
**
|
|
|
|
****************************************************************************/
|
|
|
|
|
|
|
|
#ifndef QNAMESPACE_H
|
|
|
|
#define QNAMESPACE_H
|
|
|
|
|
|
|
|
#include <QtCore/qglobal.h>
|
|
|
|
|
2014-01-28 15:31:49 +00:00
|
|
|
#if defined(__OBJC__) && !defined(__cplusplus)
|
|
|
|
# warning "File built in Objective-C mode (.m), but using Qt requires Objective-C++ (.mm)"
|
|
|
|
#endif
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
QT_BEGIN_NAMESPACE
|
|
|
|
|
2014-08-10 12:09:55 +00:00
|
|
|
#if !defined(Q_QDOC) && !defined(Q_MOC_RUN)
|
|
|
|
struct QMetaObject;
|
|
|
|
const QMetaObject *qt_getQtMetaObject() Q_DECL_NOEXCEPT; // defined in qobject.h (which can't be included here)
|
|
|
|
#define QT_Q_ENUM(ENUM) \
|
|
|
|
inline const QMetaObject *qt_getEnumMetaObject(ENUM) Q_DECL_NOEXCEPT { return qt_getQtMetaObject(); } \
|
|
|
|
inline Q_DECL_CONSTEXPR const char *qt_getEnumName(ENUM) Q_DECL_NOEXCEPT { return #ENUM; }
|
|
|
|
#define QT_Q_FLAG(ENUM) QT_Q_ENUM(ENUM)
|
|
|
|
#else
|
|
|
|
#define QT_Q_ENUM Q_ENUM
|
|
|
|
#define QT_Q_FLAG Q_FLAG
|
|
|
|
#endif
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
#ifndef Q_MOC_RUN
|
|
|
|
namespace
|
|
|
|
#else
|
|
|
|
class Q_CORE_EXPORT
|
|
|
|
#endif
|
|
|
|
Qt {
|
|
|
|
|
|
|
|
#if defined(Q_MOC_RUN)
|
|
|
|
Q_OBJECT
|
|
|
|
public:
|
|
|
|
#endif
|
|
|
|
|
|
|
|
enum GlobalColor {
|
|
|
|
color0,
|
|
|
|
color1,
|
|
|
|
black,
|
|
|
|
white,
|
|
|
|
darkGray,
|
|
|
|
gray,
|
|
|
|
lightGray,
|
|
|
|
red,
|
|
|
|
green,
|
|
|
|
blue,
|
|
|
|
cyan,
|
|
|
|
magenta,
|
|
|
|
yellow,
|
|
|
|
darkRed,
|
|
|
|
darkGreen,
|
|
|
|
darkBlue,
|
|
|
|
darkCyan,
|
|
|
|
darkMagenta,
|
|
|
|
darkYellow,
|
|
|
|
transparent
|
|
|
|
};
|
|
|
|
|
|
|
|
enum KeyboardModifier {
|
|
|
|
NoModifier = 0x00000000,
|
|
|
|
ShiftModifier = 0x02000000,
|
|
|
|
ControlModifier = 0x04000000,
|
|
|
|
AltModifier = 0x08000000,
|
|
|
|
MetaModifier = 0x10000000,
|
|
|
|
KeypadModifier = 0x20000000,
|
|
|
|
GroupSwitchModifier = 0x40000000,
|
|
|
|
// Do not extend the mask to include 0x01000000
|
|
|
|
KeyboardModifierMask = 0xfe000000
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(KeyboardModifiers, KeyboardModifier)
|
|
|
|
|
|
|
|
//shorter names for shortcuts
|
2013-04-22 10:11:37 +00:00
|
|
|
// The use of all-caps identifiers has the potential for clashing with
|
|
|
|
// user-defined or third-party macros. More so when the identifiers are not
|
|
|
|
// "namespace"-prefixed. This is considered bad practice and is why
|
|
|
|
// KeypadModifier was not added to the Modifier enum.
|
2011-04-27 10:05:43 +00:00
|
|
|
enum Modifier {
|
|
|
|
META = Qt::MetaModifier,
|
|
|
|
SHIFT = Qt::ShiftModifier,
|
|
|
|
CTRL = Qt::ControlModifier,
|
|
|
|
ALT = Qt::AltModifier,
|
|
|
|
MODIFIER_MASK = KeyboardModifierMask,
|
|
|
|
UNICODE_ACCEL = 0x00000000
|
|
|
|
};
|
|
|
|
|
|
|
|
enum MouseButton {
|
|
|
|
NoButton = 0x00000000,
|
|
|
|
LeftButton = 0x00000001,
|
|
|
|
RightButton = 0x00000002,
|
2012-04-02 12:17:36 +00:00
|
|
|
MidButton = 0x00000004, // ### Qt 6: remove me
|
2011-04-27 10:05:43 +00:00
|
|
|
MiddleButton = MidButton,
|
2012-04-30 05:21:43 +00:00
|
|
|
BackButton = 0x00000008,
|
|
|
|
XButton1 = BackButton,
|
2011-11-10 05:02:18 +00:00
|
|
|
ExtraButton1 = XButton1,
|
2012-04-30 05:21:43 +00:00
|
|
|
ForwardButton = 0x00000010,
|
|
|
|
XButton2 = ForwardButton,
|
|
|
|
ExtraButton2 = ForwardButton,
|
2011-11-10 05:02:18 +00:00
|
|
|
TaskButton = 0x00000020,
|
|
|
|
ExtraButton3 = TaskButton,
|
|
|
|
ExtraButton4 = 0x00000040,
|
|
|
|
ExtraButton5 = 0x00000080,
|
|
|
|
ExtraButton6 = 0x00000100,
|
|
|
|
ExtraButton7 = 0x00000200,
|
|
|
|
ExtraButton8 = 0x00000400,
|
|
|
|
ExtraButton9 = 0x00000800,
|
|
|
|
ExtraButton10 = 0x00001000,
|
|
|
|
ExtraButton11 = 0x00002000,
|
|
|
|
ExtraButton12 = 0x00004000,
|
|
|
|
ExtraButton13 = 0x00008000,
|
|
|
|
ExtraButton14 = 0x00010000,
|
|
|
|
ExtraButton15 = 0x00020000,
|
|
|
|
ExtraButton16 = 0x00040000,
|
|
|
|
ExtraButton17 = 0x00080000,
|
|
|
|
ExtraButton18 = 0x00100000,
|
|
|
|
ExtraButton19 = 0x00200000,
|
|
|
|
ExtraButton20 = 0x00400000,
|
|
|
|
ExtraButton21 = 0x00800000,
|
|
|
|
ExtraButton22 = 0x01000000,
|
|
|
|
ExtraButton23 = 0x02000000,
|
|
|
|
ExtraButton24 = 0x04000000,
|
2012-02-06 16:38:38 +00:00
|
|
|
AllButtons = 0x07ffffff,
|
2011-11-10 05:02:18 +00:00
|
|
|
MaxMouseButton = ExtraButton24,
|
|
|
|
// 4 high-order bits remain available for future use (0x08000000 through 0x40000000).
|
2011-11-17 16:09:32 +00:00
|
|
|
MouseButtonMask = 0xffffffff
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(MouseButtons, MouseButton)
|
|
|
|
|
|
|
|
enum Orientation {
|
|
|
|
Horizontal = 0x1,
|
|
|
|
Vertical = 0x2
|
|
|
|
};
|
|
|
|
|
|
|
|
Q_DECLARE_FLAGS(Orientations, Orientation)
|
|
|
|
|
|
|
|
enum FocusPolicy {
|
|
|
|
NoFocus = 0,
|
|
|
|
TabFocus = 0x1,
|
|
|
|
ClickFocus = 0x2,
|
|
|
|
StrongFocus = TabFocus | ClickFocus | 0x8,
|
|
|
|
WheelFocus = StrongFocus | 0x4
|
|
|
|
};
|
|
|
|
|
2015-01-30 10:23:56 +00:00
|
|
|
enum TabFocusBehavior {
|
|
|
|
NoTabFocus = 0x00,
|
|
|
|
TabFocusTextControls = 0x01,
|
|
|
|
TabFocusListControls = 0x02,
|
|
|
|
TabFocusAllControls = 0xff
|
|
|
|
};
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
enum SortOrder {
|
|
|
|
AscendingOrder,
|
|
|
|
DescendingOrder
|
|
|
|
};
|
|
|
|
|
|
|
|
enum TileRule {
|
|
|
|
StretchTile,
|
|
|
|
RepeatTile,
|
|
|
|
RoundTile
|
|
|
|
};
|
|
|
|
|
|
|
|
// Text formatting flags for QPainter::drawText and QLabel.
|
|
|
|
// The following two enums can be combined to one integer which
|
2013-07-12 12:45:25 +00:00
|
|
|
// is passed as 'flags' to QPainter::drawText, QFontMetrics::boundingRect and qt_format_text.
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
enum AlignmentFlag {
|
|
|
|
AlignLeft = 0x0001,
|
|
|
|
AlignLeading = AlignLeft,
|
|
|
|
AlignRight = 0x0002,
|
|
|
|
AlignTrailing = AlignRight,
|
|
|
|
AlignHCenter = 0x0004,
|
|
|
|
AlignJustify = 0x0008,
|
|
|
|
AlignAbsolute = 0x0010,
|
|
|
|
AlignHorizontal_Mask = AlignLeft | AlignRight | AlignHCenter | AlignJustify | AlignAbsolute,
|
|
|
|
|
|
|
|
AlignTop = 0x0020,
|
|
|
|
AlignBottom = 0x0040,
|
|
|
|
AlignVCenter = 0x0080,
|
2013-07-12 12:45:25 +00:00
|
|
|
AlignBaseline = 0x0100,
|
|
|
|
// Note that 0x100 will clash with Qt::TextSingleLine = 0x100 due to what the comment above
|
|
|
|
// this enum declaration states. However, since Qt::AlignBaseline is only used by layouts,
|
|
|
|
// it doesn't make sense to pass Qt::AlignBaseline to QPainter::drawText(), so there
|
|
|
|
// shouldn't really be any ambiguity between the two overlapping enum values.
|
|
|
|
AlignVertical_Mask = AlignTop | AlignBottom | AlignVCenter | AlignBaseline,
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
AlignCenter = AlignVCenter | AlignHCenter
|
|
|
|
};
|
|
|
|
|
|
|
|
Q_DECLARE_FLAGS(Alignment, AlignmentFlag)
|
|
|
|
|
|
|
|
enum TextFlag {
|
|
|
|
TextSingleLine = 0x0100,
|
|
|
|
TextDontClip = 0x0200,
|
|
|
|
TextExpandTabs = 0x0400,
|
|
|
|
TextShowMnemonic = 0x0800,
|
|
|
|
TextWordWrap = 0x1000,
|
|
|
|
TextWrapAnywhere = 0x2000,
|
|
|
|
TextDontPrint = 0x4000,
|
|
|
|
TextIncludeTrailingSpaces = 0x08000000,
|
|
|
|
TextHideMnemonic = 0x8000,
|
|
|
|
TextJustificationForced = 0x10000,
|
|
|
|
TextForceLeftToRight = 0x20000,
|
|
|
|
TextForceRightToLeft = 0x40000,
|
2014-03-19 16:21:29 +00:00
|
|
|
// Ensures that the longest variant is always used when computing the
|
|
|
|
// size of a multi-variant string.
|
2011-04-27 10:05:43 +00:00
|
|
|
TextLongestVariant = 0x80000,
|
|
|
|
TextBypassShaping = 0x100000
|
|
|
|
};
|
|
|
|
|
|
|
|
enum TextElideMode {
|
|
|
|
ElideLeft,
|
|
|
|
ElideRight,
|
|
|
|
ElideMiddle,
|
|
|
|
ElideNone
|
|
|
|
};
|
|
|
|
|
2012-09-06 13:08:40 +00:00
|
|
|
enum WhiteSpaceMode {
|
|
|
|
WhiteSpaceNormal,
|
|
|
|
WhiteSpacePre,
|
|
|
|
WhiteSpaceNoWrap,
|
|
|
|
WhiteSpaceModeUndefined = -1
|
|
|
|
};
|
|
|
|
|
|
|
|
enum HitTestAccuracy { ExactHit, FuzzyHit };
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
enum WindowType {
|
|
|
|
Widget = 0x00000000,
|
|
|
|
Window = 0x00000001,
|
|
|
|
Dialog = 0x00000002 | Window,
|
|
|
|
Sheet = 0x00000004 | Window,
|
2011-04-19 11:28:31 +00:00
|
|
|
Drawer = Sheet | Dialog,
|
2011-04-27 10:05:43 +00:00
|
|
|
Popup = 0x00000008 | Window,
|
2011-04-19 11:28:31 +00:00
|
|
|
Tool = Popup | Dialog,
|
|
|
|
ToolTip = Popup | Sheet,
|
|
|
|
SplashScreen = ToolTip | Dialog,
|
2011-04-27 10:05:43 +00:00
|
|
|
Desktop = 0x00000010 | Window,
|
2011-05-27 14:06:53 +00:00
|
|
|
SubWindow = 0x00000012,
|
2012-12-12 16:18:28 +00:00
|
|
|
ForeignWindow = 0x00000020 | Window,
|
2013-09-18 14:14:49 +00:00
|
|
|
CoverWindow = 0x00000040 | Window,
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
WindowType_Mask = 0x000000ff,
|
|
|
|
MSWindowsFixedSizeDialogHint = 0x00000100,
|
|
|
|
MSWindowsOwnDC = 0x00000200,
|
2013-05-10 07:27:34 +00:00
|
|
|
BypassWindowManagerHint = 0x00000400,
|
|
|
|
X11BypassWindowManagerHint = BypassWindowManagerHint,
|
2011-04-27 10:05:43 +00:00
|
|
|
FramelessWindowHint = 0x00000800,
|
|
|
|
WindowTitleHint = 0x00001000,
|
|
|
|
WindowSystemMenuHint = 0x00002000,
|
|
|
|
WindowMinimizeButtonHint = 0x00004000,
|
|
|
|
WindowMaximizeButtonHint = 0x00008000,
|
|
|
|
WindowMinMaxButtonsHint = WindowMinimizeButtonHint | WindowMaximizeButtonHint,
|
|
|
|
WindowContextHelpButtonHint = 0x00010000,
|
|
|
|
WindowShadeButtonHint = 0x00020000,
|
|
|
|
WindowStaysOnTopHint = 0x00040000,
|
2011-09-20 16:09:08 +00:00
|
|
|
WindowTransparentForInput = 0x00080000,
|
2012-02-01 11:48:13 +00:00
|
|
|
WindowOverridesSystemGestures = 0x00100000,
|
2011-12-02 14:20:04 +00:00
|
|
|
WindowDoesNotAcceptFocus = 0x00200000,
|
2015-03-20 10:23:31 +00:00
|
|
|
MaximizeUsingFullscreenGeometryHint = 0x00400000,
|
2011-04-27 08:50:04 +00:00
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
CustomizeWindowHint = 0x02000000,
|
|
|
|
WindowStaysOnBottomHint = 0x04000000,
|
|
|
|
WindowCloseButtonHint = 0x08000000,
|
|
|
|
MacWindowToolBarButtonHint = 0x10000000,
|
|
|
|
BypassGraphicsProxyWidget = 0x20000000,
|
2012-11-05 21:20:47 +00:00
|
|
|
NoDropShadowWindowHint = 0x40000000,
|
2016-04-15 07:03:22 +00:00
|
|
|
WindowFullscreenButtonHint = 0x80000000
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
Q_DECLARE_FLAGS(WindowFlags, WindowType)
|
|
|
|
|
|
|
|
enum WindowState {
|
|
|
|
WindowNoState = 0x00000000,
|
|
|
|
WindowMinimized = 0x00000001,
|
|
|
|
WindowMaximized = 0x00000002,
|
|
|
|
WindowFullScreen = 0x00000004,
|
|
|
|
WindowActive = 0x00000008
|
|
|
|
};
|
|
|
|
|
|
|
|
Q_DECLARE_FLAGS(WindowStates, WindowState)
|
|
|
|
|
QPA: Add interface for setting the application state explicitly
The motivation for this patch is twofold:
1: we need a way (for iOS/Android) to tell the current window to remove
focus from the focus object when the user hides the input panel.
Otherwise, if the focus object is e.g a line edit, the cursor will
continue to blink inside it, which is wrong. As it stands, telling
the active window to deactivate
(by calling QWindowSystemInterface::handleWindowActivated(0)), will cause
the whole application to deactivate if no windows are active, which
is not what we want.
2: Qt currently understands just two application states, Activated and
Deactivated. On mobile platforms we can have other states
as well, like "suspended" on iOS. So controlling the application
state should not depend on window activation, but instead be controlled
through a separate API by the platform plugin.
This patch will add the following function:
QWindowSystemInterface::handleApplicationStateChanged(Qt::ApplicationState newState)
that lets us control the application state from the plugin. This also
means that we factor out application state handling from window
activation, which also gives us a way to remove focus from a window while
keeping the application active.
To not break existing desktop platforms that relies on application
activation being tied to window activation, we need to make this API
opt-in by using a platform integration capability hint. This is not optimal, but
found necessary after investigating several other solutions.
Which states (other that active/inactive) it makes sense
to add to Qt::ApplicationState will be a topic for later patches.
Change-Id: Ic6fdd3b66867abb67da43eba04ec86f06d82ff94
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-01-28 14:16:02 +00:00
|
|
|
enum ApplicationState {
|
2013-02-28 13:57:27 +00:00
|
|
|
ApplicationSuspended = 0x00000000,
|
|
|
|
ApplicationHidden = 0x00000001,
|
|
|
|
ApplicationInactive = 0x00000002,
|
|
|
|
ApplicationActive = 0x00000004
|
QPA: Add interface for setting the application state explicitly
The motivation for this patch is twofold:
1: we need a way (for iOS/Android) to tell the current window to remove
focus from the focus object when the user hides the input panel.
Otherwise, if the focus object is e.g a line edit, the cursor will
continue to blink inside it, which is wrong. As it stands, telling
the active window to deactivate
(by calling QWindowSystemInterface::handleWindowActivated(0)), will cause
the whole application to deactivate if no windows are active, which
is not what we want.
2: Qt currently understands just two application states, Activated and
Deactivated. On mobile platforms we can have other states
as well, like "suspended" on iOS. So controlling the application
state should not depend on window activation, but instead be controlled
through a separate API by the platform plugin.
This patch will add the following function:
QWindowSystemInterface::handleApplicationStateChanged(Qt::ApplicationState newState)
that lets us control the application state from the plugin. This also
means that we factor out application state handling from window
activation, which also gives us a way to remove focus from a window while
keeping the application active.
To not break existing desktop platforms that relies on application
activation being tied to window activation, we need to make this API
opt-in by using a platform integration capability hint. This is not optimal, but
found necessary after investigating several other solutions.
Which states (other that active/inactive) it makes sense
to add to Qt::ApplicationState will be a topic for later patches.
Change-Id: Ic6fdd3b66867abb67da43eba04ec86f06d82ff94
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-01-28 14:16:02 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
Q_DECLARE_FLAGS(ApplicationStates, ApplicationState)
|
|
|
|
|
2011-10-04 11:11:30 +00:00
|
|
|
enum ScreenOrientation {
|
2012-01-13 09:31:11 +00:00
|
|
|
PrimaryOrientation = 0x00000000,
|
2011-10-08 16:45:22 +00:00
|
|
|
PortraitOrientation = 0x00000001,
|
|
|
|
LandscapeOrientation = 0x00000002,
|
|
|
|
InvertedPortraitOrientation = 0x00000004,
|
|
|
|
InvertedLandscapeOrientation = 0x00000008
|
2011-10-04 11:11:30 +00:00
|
|
|
};
|
|
|
|
|
2011-10-08 16:45:22 +00:00
|
|
|
Q_DECLARE_FLAGS(ScreenOrientations, ScreenOrientation)
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
enum WidgetAttribute {
|
|
|
|
WA_Disabled = 0,
|
|
|
|
WA_UnderMouse = 1,
|
|
|
|
WA_MouseTracking = 2,
|
|
|
|
WA_ContentsPropagated = 3, // ## deprecated
|
|
|
|
WA_OpaquePaintEvent = 4,
|
|
|
|
WA_NoBackground = WA_OpaquePaintEvent, // ## deprecated
|
|
|
|
WA_StaticContents = 5,
|
|
|
|
WA_LaidOut = 7,
|
|
|
|
WA_PaintOnScreen = 8,
|
|
|
|
WA_NoSystemBackground = 9,
|
|
|
|
WA_UpdatesDisabled = 10,
|
|
|
|
WA_Mapped = 11,
|
|
|
|
WA_MacNoClickThrough = 12, // Mac only
|
|
|
|
WA_InputMethodEnabled = 14,
|
|
|
|
WA_WState_Visible = 15,
|
|
|
|
WA_WState_Hidden = 16,
|
|
|
|
|
|
|
|
WA_ForceDisabled = 32,
|
|
|
|
WA_KeyCompression = 33,
|
|
|
|
WA_PendingMoveEvent = 34,
|
|
|
|
WA_PendingResizeEvent = 35,
|
|
|
|
WA_SetPalette = 36,
|
|
|
|
WA_SetFont = 37,
|
|
|
|
WA_SetCursor = 38,
|
|
|
|
WA_NoChildEventsFromChildren = 39,
|
|
|
|
WA_WindowModified = 41,
|
|
|
|
WA_Resized = 42,
|
|
|
|
WA_Moved = 43,
|
|
|
|
WA_PendingUpdate = 44,
|
|
|
|
WA_InvalidSize = 45,
|
|
|
|
WA_MacBrushedMetal = 46, // Mac only
|
|
|
|
WA_MacMetalStyle = WA_MacBrushedMetal, // obsolete
|
|
|
|
WA_CustomWhatsThis = 47,
|
|
|
|
WA_LayoutOnEntireRect = 48,
|
|
|
|
WA_OutsideWSRange = 49,
|
|
|
|
WA_GrabbedShortcut = 50,
|
|
|
|
WA_TransparentForMouseEvents = 51,
|
|
|
|
WA_PaintUnclipped = 52,
|
|
|
|
WA_SetWindowIcon = 53,
|
|
|
|
WA_NoMouseReplay = 54,
|
|
|
|
WA_DeleteOnClose = 55,
|
|
|
|
WA_RightToLeft = 56,
|
|
|
|
WA_SetLayoutDirection = 57,
|
|
|
|
WA_NoChildEventsForParent = 58,
|
|
|
|
WA_ForceUpdatesDisabled = 59,
|
|
|
|
|
|
|
|
WA_WState_Created = 60,
|
|
|
|
WA_WState_CompressKeys = 61,
|
|
|
|
WA_WState_InPaintEvent = 62,
|
|
|
|
WA_WState_Reparented = 63,
|
|
|
|
WA_WState_ConfigPending = 64,
|
|
|
|
WA_WState_Polished = 66,
|
|
|
|
WA_WState_DND = 67, // ## deprecated
|
|
|
|
WA_WState_OwnSizePolicy = 68,
|
|
|
|
WA_WState_ExplicitShowHide = 69,
|
|
|
|
|
|
|
|
WA_ShowModal = 70, // ## deprecated
|
|
|
|
WA_MouseNoMask = 71,
|
|
|
|
WA_GroupLeader = 72, // ## deprecated
|
|
|
|
WA_NoMousePropagation = 73, // ## for now, might go away.
|
|
|
|
WA_Hover = 74,
|
|
|
|
WA_InputMethodTransparent = 75, // Don't reset IM when user clicks on this (for virtual keyboards on embedded)
|
|
|
|
WA_QuitOnClose = 76,
|
|
|
|
|
|
|
|
WA_KeyboardFocusChange = 77,
|
|
|
|
|
|
|
|
WA_AcceptDrops = 78,
|
|
|
|
WA_DropSiteRegistered = 79, // internal
|
|
|
|
WA_ForceAcceptDrops = WA_DropSiteRegistered, // ## deprecated
|
|
|
|
|
|
|
|
WA_WindowPropagation = 80,
|
|
|
|
|
|
|
|
WA_NoX11EventCompression = 81,
|
|
|
|
WA_TintedBackground = 82,
|
|
|
|
WA_X11OpenGLOverlay = 83,
|
|
|
|
WA_AlwaysShowToolTips = 84,
|
|
|
|
WA_MacOpaqueSizeGrip = 85,
|
|
|
|
WA_SetStyle = 86,
|
|
|
|
|
|
|
|
WA_SetLocale = 87,
|
|
|
|
WA_MacShowFocusRect = 88,
|
|
|
|
|
|
|
|
WA_MacNormalSize = 89, // Mac only
|
|
|
|
WA_MacSmallSize = 90, // Mac only
|
|
|
|
WA_MacMiniSize = 91, // Mac only
|
|
|
|
|
|
|
|
WA_LayoutUsesWidgetRect = 92,
|
|
|
|
WA_StyledBackground = 93, // internal
|
|
|
|
WA_MSWindowsUseDirect3D = 94, // Win only
|
|
|
|
WA_CanHostQMdiSubWindowTitleBar = 95, // Internal
|
|
|
|
|
|
|
|
WA_MacAlwaysShowToolWindow = 96, // Mac only
|
|
|
|
|
|
|
|
WA_StyleSheet = 97, // internal
|
|
|
|
|
|
|
|
WA_ShowWithoutActivating = 98,
|
|
|
|
|
|
|
|
WA_X11BypassTransientForHint = 99,
|
|
|
|
|
|
|
|
WA_NativeWindow = 100,
|
|
|
|
WA_DontCreateNativeAncestors = 101,
|
|
|
|
|
|
|
|
WA_MacVariableSize = 102, // Mac only
|
|
|
|
|
|
|
|
WA_DontShowOnScreen = 103,
|
|
|
|
|
|
|
|
// window types from http://standards.freedesktop.org/wm-spec/
|
|
|
|
WA_X11NetWmWindowTypeDesktop = 104,
|
|
|
|
WA_X11NetWmWindowTypeDock = 105,
|
|
|
|
WA_X11NetWmWindowTypeToolBar = 106,
|
|
|
|
WA_X11NetWmWindowTypeMenu = 107,
|
|
|
|
WA_X11NetWmWindowTypeUtility = 108,
|
|
|
|
WA_X11NetWmWindowTypeSplash = 109,
|
|
|
|
WA_X11NetWmWindowTypeDialog = 110,
|
|
|
|
WA_X11NetWmWindowTypeDropDownMenu = 111,
|
|
|
|
WA_X11NetWmWindowTypePopupMenu = 112,
|
|
|
|
WA_X11NetWmWindowTypeToolTip = 113,
|
|
|
|
WA_X11NetWmWindowTypeNotification = 114,
|
|
|
|
WA_X11NetWmWindowTypeCombo = 115,
|
|
|
|
WA_X11NetWmWindowTypeDND = 116,
|
|
|
|
|
|
|
|
WA_MacFrameworkScaled = 117,
|
|
|
|
|
|
|
|
WA_SetWindowModality = 118,
|
|
|
|
WA_WState_WindowOpacitySet = 119, // internal
|
|
|
|
WA_TranslucentBackground = 120,
|
|
|
|
|
|
|
|
WA_AcceptTouchEvents = 121,
|
|
|
|
WA_WState_AcceptedTouchBeginEvent = 122,
|
|
|
|
WA_TouchPadAcceptSingleTouchEvents = 123,
|
|
|
|
|
2011-12-15 09:41:22 +00:00
|
|
|
WA_X11DoNotAcceptFocus = 126,
|
|
|
|
WA_MacNoShadow = 127,
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2014-06-20 09:58:34 +00:00
|
|
|
WA_AlwaysStackOnTop = 128,
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
// Add new attributes before this line
|
|
|
|
WA_AttributeCount
|
|
|
|
};
|
|
|
|
|
|
|
|
enum ApplicationAttribute
|
|
|
|
{
|
|
|
|
AA_ImmediateWidgetCreation = 0,
|
|
|
|
AA_MSWindowsUseDirect3DByDefault = 1, // Win only
|
|
|
|
AA_DontShowIconsInMenus = 2,
|
|
|
|
AA_NativeWindows = 3,
|
|
|
|
AA_DontCreateNativeWidgetSiblings = 4,
|
2015-08-31 11:16:21 +00:00
|
|
|
AA_PluginApplication = 5,
|
|
|
|
AA_MacPluginApplication = AA_PluginApplication, // ### Qt 6: remove me
|
2011-04-27 10:05:43 +00:00
|
|
|
AA_DontUseNativeMenuBar = 6,
|
|
|
|
AA_MacDontSwapCtrlAndMeta = 7,
|
2012-01-11 10:49:35 +00:00
|
|
|
AA_Use96Dpi = 8,
|
2011-04-27 10:05:43 +00:00
|
|
|
AA_X11InitThreads = 10,
|
2012-01-12 07:53:13 +00:00
|
|
|
AA_SynthesizeTouchForUnhandledMouseEvents = 11,
|
|
|
|
AA_SynthesizeMouseForUnhandledTouchEvents = 12,
|
2013-03-01 10:38:19 +00:00
|
|
|
AA_UseHighDpiPixmaps = 13,
|
2013-12-18 13:48:22 +00:00
|
|
|
AA_ForceRasterWidgets = 14,
|
Dynamic GL switch on Windows
The patch introduces a new build configuration on Windows which
can be requested by passing -opengl dynamic to configure.
Platforms other than Windows (including WinRT) are not affected.
The existing Angle and desktop configurations are not affected.
These continue to function as before and Angle remains the default.
In the future, when all modules have added support for the dynamic
path, as described below, the default configuration could be changed
to be the dynamic one. This would allow providing a single set of
binaries in the official builds instead of the current two.
When requesting dynamic GL, Angle is built but QT_OPENGL_ES[_2] are
never defined. Instead, the code path that has traditionally been
desktop GL only becomes the dynamic path that has to do runtime
checks. Qt modules and applications are not linked to opengl32.dll or
libegl/glesv2.dll in this case. Instead, QtGui exports all necessary
egl/egl/gl functions which will, under the hood, forward all requests
to a dynamically loaded EGL/WGL/GL implementation.
Porting guide (better said, changes needed to prepare your code to
work with dynamic GL builds when the fallback to Angle is utilized):
1. In !QT_OPENGL_ES[_2] code branches use QOpenGLFunctions::isES() to
differentiate between desktop and ES where needed. Keep in mind that
it is the desktop GL header (plus qopenglext.h) that is included,
not the GLES one.
QtGui's proxy will handle some differences, for example calling
glClearDepth will route to glClearDepthf when needed. The built-in
eglGetProcAddress is able to retrieve pointers for standard GLES2
functions too so code resolving OpenGL 2 functions will function
in any case.
2. QT_CONFIG will contain "opengl" and "dynamicgl" in dynamic builds,
but never "angle" or "opengles2".
3. The preprocessor define QT_OPENGL_DYNAMIC is also available in
dynamic builds. The usage of this is strongly discouraged and should
not be needed anywhere except for QtGui and the platform plugin.
4. Code in need of the library handle can use
QOpenGLFunctions::platformGLHandle().
The decision on which library to load is currently based on a simple
test that creates a dummy window/context and tries to resolve an
OpenGL 2 function. If this fails, it goes for Angle. This seems to work
well on Win7 PCs for example that do not have proper graphics drivers
providing OpenGL installed but are D3D9 capable using the default drivers.
Setting QT_OPENGL to desktop or angle skips the test and forces
usage of the given GL. There are also two new application attributes
that could be used for the same purpose.
If Angle is requested but the libraries are not present, desktop is
tried. If desktop is requested, or if angle is requested but nothing
works, the EGL/WGL functions will still be callable but will return 0.
This conveniently means that eglInitialize() and such will report a failure.
Debug messages can be enabled by setting QT_OPENGLPROXY_DEBUG. This will
tell which implementation is chosen.
The textures example application is ported to OpenGL 2, the GL 1
code path is removed.
[ChangeLog][QtGui] Qt builds on Windows can now be configured for
dynamic loading of the OpenGL implementation. This can be requested
by passing -opengl dynamic to configure. In this mode no modules will
link to opengl32.dll or Angle's libegl/libglesv2. Instead, QtGui will
dynamically choose between desktop and Angle during the first GL/EGL/WGL
call. This allows deploying applications with a single set of Qt libraries
with the ability of transparently falling back to Angle in case the
opengl32.dll is not suitable, due to missing graphics drivers for example.
Task-number: QTBUG-36483
Change-Id: I716fdebbf60b355b7d9ef57d1e069eef366b4ab9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-01-27 13:45:11 +00:00
|
|
|
AA_UseDesktopOpenGL = 15,
|
|
|
|
AA_UseOpenGLES = 16,
|
2014-04-24 12:36:49 +00:00
|
|
|
AA_UseSoftwareOpenGL = 17,
|
2014-09-09 08:06:45 +00:00
|
|
|
AA_ShareOpenGLContexts = 18,
|
2015-03-28 20:03:29 +00:00
|
|
|
AA_SetPalette = 19,
|
2015-10-16 10:24:38 +00:00
|
|
|
AA_EnableHighDpiScaling = 20,
|
|
|
|
AA_DisableHighDpiScaling = 21,
|
2015-11-04 19:18:14 +00:00
|
|
|
AA_UseStyleSheetPropagationInWidgetStyles = 22, // ### Qt 6: remove me
|
2016-02-15 13:27:56 +00:00
|
|
|
AA_DontUseNativeDialogs = 23,
|
add cross-platform tablet->mouse event synth; enable on Android
It's urgent to fix the issue that on Android, it became impossible
to interact with any widget or MouseArea which handles only mouse
events but not tablet events, using the stylus, because stylus events
are sent only as QTabletEvents. Before 5.6 (change
01d78ba86a631386a4d47b7c12d2a359da28f517) they were sent as
touch events, and mouse events were synthesized from those. Whereas
on other platforms, every QTabletEvent is followed by a synthesized
QMouseEvent.
This fix proceeds in the direction that event synthesis should be done
in cross-platform code so that platform plugins don't have to repeat it,
following the same pattern as for touch->mouse synthesis. Just as
in that case, the application can disable it, and the platform plugin
can also report that it's unnecessary for Qt to do the synthesis
because the platform already does.
So QTBUG-51618 is fixed, but QTBUG-47007 requires us to remove the
tablet->mouse synthesis from all platform plugins, because the plugin
does not know whether the tablet event was accepted or not, so it does
not have enough information to decide whether to synthesize a mouse
event. Synthesis has been unconditional until now, which contradicts
what the documentation says: the mouse event should be sent only if
the tablet event is NOT accepted. We can now gradually make this
promise come true.
[ChangeLog][QtCore][Tablet support] A synthetic mouse event will
no longer be sent after every QTabletEvent, only after those which are
not accepted (as documented).
Task-number: QTBUG-47007
Task-number: QTBUG-51618
Change-Id: I99404e0c2b39bbca4377be6fd48e0c6b20338466
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2016-04-07 13:07:04 +00:00
|
|
|
AA_SynthesizeMouseForUnhandledTabletEvents = 24,
|
2016-04-08 10:38:00 +00:00
|
|
|
AA_DontCheckOpenGLContextThreadAffinity = 25,
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
// Add new attributes before this line
|
|
|
|
AA_AttributeCount
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
// Image conversion flags. The unusual ordering is caused by
|
|
|
|
// compatibility and default requirements.
|
|
|
|
|
|
|
|
enum ImageConversionFlag {
|
|
|
|
ColorMode_Mask = 0x00000003,
|
|
|
|
AutoColor = 0x00000000,
|
|
|
|
ColorOnly = 0x00000003,
|
|
|
|
MonoOnly = 0x00000002,
|
|
|
|
// Reserved = 0x00000001,
|
|
|
|
|
|
|
|
AlphaDither_Mask = 0x0000000c,
|
|
|
|
ThresholdAlphaDither = 0x00000000,
|
|
|
|
OrderedAlphaDither = 0x00000004,
|
|
|
|
DiffuseAlphaDither = 0x00000008,
|
|
|
|
NoAlpha = 0x0000000c, // Not supported
|
|
|
|
|
|
|
|
Dither_Mask = 0x00000030,
|
|
|
|
DiffuseDither = 0x00000000,
|
|
|
|
OrderedDither = 0x00000010,
|
|
|
|
ThresholdDither = 0x00000020,
|
|
|
|
// ReservedDither = 0x00000030,
|
|
|
|
|
|
|
|
DitherMode_Mask = 0x000000c0,
|
|
|
|
AutoDither = 0x00000000,
|
|
|
|
PreferDither = 0x00000040,
|
|
|
|
AvoidDither = 0x00000080,
|
|
|
|
|
|
|
|
NoOpaqueDetection = 0x00000100,
|
|
|
|
NoFormatConversion = 0x00000200
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(ImageConversionFlags, ImageConversionFlag)
|
|
|
|
|
|
|
|
enum BGMode {
|
|
|
|
TransparentMode,
|
|
|
|
OpaqueMode
|
|
|
|
};
|
|
|
|
|
|
|
|
enum Key {
|
|
|
|
Key_Escape = 0x01000000, // misc keys
|
|
|
|
Key_Tab = 0x01000001,
|
|
|
|
Key_Backtab = 0x01000002,
|
|
|
|
Key_Backspace = 0x01000003,
|
|
|
|
Key_Return = 0x01000004,
|
|
|
|
Key_Enter = 0x01000005,
|
|
|
|
Key_Insert = 0x01000006,
|
|
|
|
Key_Delete = 0x01000007,
|
|
|
|
Key_Pause = 0x01000008,
|
|
|
|
Key_Print = 0x01000009,
|
|
|
|
Key_SysReq = 0x0100000a,
|
|
|
|
Key_Clear = 0x0100000b,
|
|
|
|
Key_Home = 0x01000010, // cursor movement
|
|
|
|
Key_End = 0x01000011,
|
|
|
|
Key_Left = 0x01000012,
|
|
|
|
Key_Up = 0x01000013,
|
|
|
|
Key_Right = 0x01000014,
|
|
|
|
Key_Down = 0x01000015,
|
|
|
|
Key_PageUp = 0x01000016,
|
|
|
|
Key_PageDown = 0x01000017,
|
|
|
|
Key_Shift = 0x01000020, // modifiers
|
|
|
|
Key_Control = 0x01000021,
|
|
|
|
Key_Meta = 0x01000022,
|
|
|
|
Key_Alt = 0x01000023,
|
|
|
|
Key_CapsLock = 0x01000024,
|
|
|
|
Key_NumLock = 0x01000025,
|
|
|
|
Key_ScrollLock = 0x01000026,
|
|
|
|
Key_F1 = 0x01000030, // function keys
|
|
|
|
Key_F2 = 0x01000031,
|
|
|
|
Key_F3 = 0x01000032,
|
|
|
|
Key_F4 = 0x01000033,
|
|
|
|
Key_F5 = 0x01000034,
|
|
|
|
Key_F6 = 0x01000035,
|
|
|
|
Key_F7 = 0x01000036,
|
|
|
|
Key_F8 = 0x01000037,
|
|
|
|
Key_F9 = 0x01000038,
|
|
|
|
Key_F10 = 0x01000039,
|
|
|
|
Key_F11 = 0x0100003a,
|
|
|
|
Key_F12 = 0x0100003b,
|
|
|
|
Key_F13 = 0x0100003c,
|
|
|
|
Key_F14 = 0x0100003d,
|
|
|
|
Key_F15 = 0x0100003e,
|
|
|
|
Key_F16 = 0x0100003f,
|
|
|
|
Key_F17 = 0x01000040,
|
|
|
|
Key_F18 = 0x01000041,
|
|
|
|
Key_F19 = 0x01000042,
|
|
|
|
Key_F20 = 0x01000043,
|
|
|
|
Key_F21 = 0x01000044,
|
|
|
|
Key_F22 = 0x01000045,
|
|
|
|
Key_F23 = 0x01000046,
|
|
|
|
Key_F24 = 0x01000047,
|
|
|
|
Key_F25 = 0x01000048, // F25 .. F35 only on X11
|
|
|
|
Key_F26 = 0x01000049,
|
|
|
|
Key_F27 = 0x0100004a,
|
|
|
|
Key_F28 = 0x0100004b,
|
|
|
|
Key_F29 = 0x0100004c,
|
|
|
|
Key_F30 = 0x0100004d,
|
|
|
|
Key_F31 = 0x0100004e,
|
|
|
|
Key_F32 = 0x0100004f,
|
|
|
|
Key_F33 = 0x01000050,
|
|
|
|
Key_F34 = 0x01000051,
|
|
|
|
Key_F35 = 0x01000052,
|
|
|
|
Key_Super_L = 0x01000053, // extra keys
|
|
|
|
Key_Super_R = 0x01000054,
|
|
|
|
Key_Menu = 0x01000055,
|
|
|
|
Key_Hyper_L = 0x01000056,
|
|
|
|
Key_Hyper_R = 0x01000057,
|
|
|
|
Key_Help = 0x01000058,
|
|
|
|
Key_Direction_L = 0x01000059,
|
|
|
|
Key_Direction_R = 0x01000060,
|
|
|
|
Key_Space = 0x20, // 7 bit printable ASCII
|
|
|
|
Key_Any = Key_Space,
|
|
|
|
Key_Exclam = 0x21,
|
|
|
|
Key_QuoteDbl = 0x22,
|
|
|
|
Key_NumberSign = 0x23,
|
|
|
|
Key_Dollar = 0x24,
|
|
|
|
Key_Percent = 0x25,
|
|
|
|
Key_Ampersand = 0x26,
|
|
|
|
Key_Apostrophe = 0x27,
|
|
|
|
Key_ParenLeft = 0x28,
|
|
|
|
Key_ParenRight = 0x29,
|
|
|
|
Key_Asterisk = 0x2a,
|
|
|
|
Key_Plus = 0x2b,
|
|
|
|
Key_Comma = 0x2c,
|
|
|
|
Key_Minus = 0x2d,
|
|
|
|
Key_Period = 0x2e,
|
|
|
|
Key_Slash = 0x2f,
|
|
|
|
Key_0 = 0x30,
|
|
|
|
Key_1 = 0x31,
|
|
|
|
Key_2 = 0x32,
|
|
|
|
Key_3 = 0x33,
|
|
|
|
Key_4 = 0x34,
|
|
|
|
Key_5 = 0x35,
|
|
|
|
Key_6 = 0x36,
|
|
|
|
Key_7 = 0x37,
|
|
|
|
Key_8 = 0x38,
|
|
|
|
Key_9 = 0x39,
|
|
|
|
Key_Colon = 0x3a,
|
|
|
|
Key_Semicolon = 0x3b,
|
|
|
|
Key_Less = 0x3c,
|
|
|
|
Key_Equal = 0x3d,
|
|
|
|
Key_Greater = 0x3e,
|
|
|
|
Key_Question = 0x3f,
|
|
|
|
Key_At = 0x40,
|
|
|
|
Key_A = 0x41,
|
|
|
|
Key_B = 0x42,
|
|
|
|
Key_C = 0x43,
|
|
|
|
Key_D = 0x44,
|
|
|
|
Key_E = 0x45,
|
|
|
|
Key_F = 0x46,
|
|
|
|
Key_G = 0x47,
|
|
|
|
Key_H = 0x48,
|
|
|
|
Key_I = 0x49,
|
|
|
|
Key_J = 0x4a,
|
|
|
|
Key_K = 0x4b,
|
|
|
|
Key_L = 0x4c,
|
|
|
|
Key_M = 0x4d,
|
|
|
|
Key_N = 0x4e,
|
|
|
|
Key_O = 0x4f,
|
|
|
|
Key_P = 0x50,
|
|
|
|
Key_Q = 0x51,
|
|
|
|
Key_R = 0x52,
|
|
|
|
Key_S = 0x53,
|
|
|
|
Key_T = 0x54,
|
|
|
|
Key_U = 0x55,
|
|
|
|
Key_V = 0x56,
|
|
|
|
Key_W = 0x57,
|
|
|
|
Key_X = 0x58,
|
|
|
|
Key_Y = 0x59,
|
|
|
|
Key_Z = 0x5a,
|
|
|
|
Key_BracketLeft = 0x5b,
|
|
|
|
Key_Backslash = 0x5c,
|
|
|
|
Key_BracketRight = 0x5d,
|
|
|
|
Key_AsciiCircum = 0x5e,
|
|
|
|
Key_Underscore = 0x5f,
|
|
|
|
Key_QuoteLeft = 0x60,
|
|
|
|
Key_BraceLeft = 0x7b,
|
|
|
|
Key_Bar = 0x7c,
|
|
|
|
Key_BraceRight = 0x7d,
|
|
|
|
Key_AsciiTilde = 0x7e,
|
|
|
|
|
|
|
|
Key_nobreakspace = 0x0a0,
|
|
|
|
Key_exclamdown = 0x0a1,
|
|
|
|
Key_cent = 0x0a2,
|
|
|
|
Key_sterling = 0x0a3,
|
|
|
|
Key_currency = 0x0a4,
|
|
|
|
Key_yen = 0x0a5,
|
|
|
|
Key_brokenbar = 0x0a6,
|
|
|
|
Key_section = 0x0a7,
|
|
|
|
Key_diaeresis = 0x0a8,
|
|
|
|
Key_copyright = 0x0a9,
|
|
|
|
Key_ordfeminine = 0x0aa,
|
|
|
|
Key_guillemotleft = 0x0ab, // left angle quotation mark
|
|
|
|
Key_notsign = 0x0ac,
|
|
|
|
Key_hyphen = 0x0ad,
|
|
|
|
Key_registered = 0x0ae,
|
|
|
|
Key_macron = 0x0af,
|
|
|
|
Key_degree = 0x0b0,
|
|
|
|
Key_plusminus = 0x0b1,
|
|
|
|
Key_twosuperior = 0x0b2,
|
|
|
|
Key_threesuperior = 0x0b3,
|
|
|
|
Key_acute = 0x0b4,
|
|
|
|
Key_mu = 0x0b5,
|
|
|
|
Key_paragraph = 0x0b6,
|
|
|
|
Key_periodcentered = 0x0b7,
|
|
|
|
Key_cedilla = 0x0b8,
|
|
|
|
Key_onesuperior = 0x0b9,
|
|
|
|
Key_masculine = 0x0ba,
|
|
|
|
Key_guillemotright = 0x0bb, // right angle quotation mark
|
|
|
|
Key_onequarter = 0x0bc,
|
|
|
|
Key_onehalf = 0x0bd,
|
|
|
|
Key_threequarters = 0x0be,
|
|
|
|
Key_questiondown = 0x0bf,
|
|
|
|
Key_Agrave = 0x0c0,
|
|
|
|
Key_Aacute = 0x0c1,
|
|
|
|
Key_Acircumflex = 0x0c2,
|
|
|
|
Key_Atilde = 0x0c3,
|
|
|
|
Key_Adiaeresis = 0x0c4,
|
|
|
|
Key_Aring = 0x0c5,
|
|
|
|
Key_AE = 0x0c6,
|
|
|
|
Key_Ccedilla = 0x0c7,
|
|
|
|
Key_Egrave = 0x0c8,
|
|
|
|
Key_Eacute = 0x0c9,
|
|
|
|
Key_Ecircumflex = 0x0ca,
|
|
|
|
Key_Ediaeresis = 0x0cb,
|
|
|
|
Key_Igrave = 0x0cc,
|
|
|
|
Key_Iacute = 0x0cd,
|
|
|
|
Key_Icircumflex = 0x0ce,
|
|
|
|
Key_Idiaeresis = 0x0cf,
|
|
|
|
Key_ETH = 0x0d0,
|
|
|
|
Key_Ntilde = 0x0d1,
|
|
|
|
Key_Ograve = 0x0d2,
|
|
|
|
Key_Oacute = 0x0d3,
|
|
|
|
Key_Ocircumflex = 0x0d4,
|
|
|
|
Key_Otilde = 0x0d5,
|
|
|
|
Key_Odiaeresis = 0x0d6,
|
|
|
|
Key_multiply = 0x0d7,
|
|
|
|
Key_Ooblique = 0x0d8,
|
|
|
|
Key_Ugrave = 0x0d9,
|
|
|
|
Key_Uacute = 0x0da,
|
|
|
|
Key_Ucircumflex = 0x0db,
|
|
|
|
Key_Udiaeresis = 0x0dc,
|
|
|
|
Key_Yacute = 0x0dd,
|
|
|
|
Key_THORN = 0x0de,
|
|
|
|
Key_ssharp = 0x0df,
|
|
|
|
Key_division = 0x0f7,
|
|
|
|
Key_ydiaeresis = 0x0ff,
|
|
|
|
|
|
|
|
// International input method support (X keycode - 0xEE00, the
|
|
|
|
// definition follows Qt/Embedded 2.3.7) Only interesting if
|
|
|
|
// you are writing your own input method
|
|
|
|
|
|
|
|
// International & multi-key character composition
|
|
|
|
Key_AltGr = 0x01001103,
|
|
|
|
Key_Multi_key = 0x01001120, // Multi-key character compose
|
|
|
|
Key_Codeinput = 0x01001137,
|
|
|
|
Key_SingleCandidate = 0x0100113c,
|
|
|
|
Key_MultipleCandidate = 0x0100113d,
|
|
|
|
Key_PreviousCandidate = 0x0100113e,
|
|
|
|
|
|
|
|
// Misc Functions
|
|
|
|
Key_Mode_switch = 0x0100117e, // Character set switch
|
|
|
|
//Key_script_switch = 0x0100117e, // Alias for mode_switch
|
|
|
|
|
|
|
|
// Japanese keyboard support
|
|
|
|
Key_Kanji = 0x01001121, // Kanji, Kanji convert
|
|
|
|
Key_Muhenkan = 0x01001122, // Cancel Conversion
|
|
|
|
//Key_Henkan_Mode = 0x01001123, // Start/Stop Conversion
|
|
|
|
Key_Henkan = 0x01001123, // Alias for Henkan_Mode
|
|
|
|
Key_Romaji = 0x01001124, // to Romaji
|
|
|
|
Key_Hiragana = 0x01001125, // to Hiragana
|
|
|
|
Key_Katakana = 0x01001126, // to Katakana
|
|
|
|
Key_Hiragana_Katakana = 0x01001127, // Hiragana/Katakana toggle
|
|
|
|
Key_Zenkaku = 0x01001128, // to Zenkaku
|
|
|
|
Key_Hankaku = 0x01001129, // to Hankaku
|
|
|
|
Key_Zenkaku_Hankaku = 0x0100112a, // Zenkaku/Hankaku toggle
|
|
|
|
Key_Touroku = 0x0100112b, // Add to Dictionary
|
|
|
|
Key_Massyo = 0x0100112c, // Delete from Dictionary
|
|
|
|
Key_Kana_Lock = 0x0100112d, // Kana Lock
|
|
|
|
Key_Kana_Shift = 0x0100112e, // Kana Shift
|
|
|
|
Key_Eisu_Shift = 0x0100112f, // Alphanumeric Shift
|
|
|
|
Key_Eisu_toggle = 0x01001130, // Alphanumeric toggle
|
|
|
|
//Key_Kanji_Bangou = 0x01001137, // Codeinput
|
|
|
|
//Key_Zen_Koho = 0x0100113d, // Multiple/All Candidate(s)
|
|
|
|
//Key_Mae_Koho = 0x0100113e, // Previous Candidate
|
|
|
|
|
|
|
|
// Korean keyboard support
|
|
|
|
//
|
|
|
|
// In fact, many Korean users need only 2 keys, Key_Hangul and
|
|
|
|
// Key_Hangul_Hanja. But rest of the keys are good for future.
|
|
|
|
|
|
|
|
Key_Hangul = 0x01001131, // Hangul start/stop(toggle)
|
|
|
|
Key_Hangul_Start = 0x01001132, // Hangul start
|
|
|
|
Key_Hangul_End = 0x01001133, // Hangul end, English start
|
|
|
|
Key_Hangul_Hanja = 0x01001134, // Start Hangul->Hanja Conversion
|
|
|
|
Key_Hangul_Jamo = 0x01001135, // Hangul Jamo mode
|
|
|
|
Key_Hangul_Romaja = 0x01001136, // Hangul Romaja mode
|
|
|
|
//Key_Hangul_Codeinput = 0x01001137, // Hangul code input mode
|
|
|
|
Key_Hangul_Jeonja = 0x01001138, // Jeonja mode
|
|
|
|
Key_Hangul_Banja = 0x01001139, // Banja mode
|
|
|
|
Key_Hangul_PreHanja = 0x0100113a, // Pre Hanja conversion
|
|
|
|
Key_Hangul_PostHanja = 0x0100113b, // Post Hanja conversion
|
|
|
|
//Key_Hangul_SingleCandidate = 0x0100113c, // Single candidate
|
|
|
|
//Key_Hangul_MultipleCandidate = 0x0100113d, // Multiple candidate
|
|
|
|
//Key_Hangul_PreviousCandidate = 0x0100113e, // Previous candidate
|
|
|
|
Key_Hangul_Special = 0x0100113f, // Special symbols
|
|
|
|
//Key_Hangul_switch = 0x0100117e, // Alias for mode_switch
|
|
|
|
|
|
|
|
// dead keys (X keycode - 0xED00 to avoid the conflict)
|
|
|
|
Key_Dead_Grave = 0x01001250,
|
|
|
|
Key_Dead_Acute = 0x01001251,
|
|
|
|
Key_Dead_Circumflex = 0x01001252,
|
|
|
|
Key_Dead_Tilde = 0x01001253,
|
|
|
|
Key_Dead_Macron = 0x01001254,
|
|
|
|
Key_Dead_Breve = 0x01001255,
|
|
|
|
Key_Dead_Abovedot = 0x01001256,
|
|
|
|
Key_Dead_Diaeresis = 0x01001257,
|
|
|
|
Key_Dead_Abovering = 0x01001258,
|
|
|
|
Key_Dead_Doubleacute = 0x01001259,
|
|
|
|
Key_Dead_Caron = 0x0100125a,
|
|
|
|
Key_Dead_Cedilla = 0x0100125b,
|
|
|
|
Key_Dead_Ogonek = 0x0100125c,
|
|
|
|
Key_Dead_Iota = 0x0100125d,
|
|
|
|
Key_Dead_Voiced_Sound = 0x0100125e,
|
|
|
|
Key_Dead_Semivoiced_Sound = 0x0100125f,
|
|
|
|
Key_Dead_Belowdot = 0x01001260,
|
|
|
|
Key_Dead_Hook = 0x01001261,
|
|
|
|
Key_Dead_Horn = 0x01001262,
|
|
|
|
|
|
|
|
// multimedia/internet keys - ignored by default - see QKeyEvent c'tor
|
|
|
|
Key_Back = 0x01000061,
|
|
|
|
Key_Forward = 0x01000062,
|
|
|
|
Key_Stop = 0x01000063,
|
|
|
|
Key_Refresh = 0x01000064,
|
|
|
|
Key_VolumeDown = 0x01000070,
|
|
|
|
Key_VolumeMute = 0x01000071,
|
|
|
|
Key_VolumeUp = 0x01000072,
|
|
|
|
Key_BassBoost = 0x01000073,
|
|
|
|
Key_BassUp = 0x01000074,
|
|
|
|
Key_BassDown = 0x01000075,
|
|
|
|
Key_TrebleUp = 0x01000076,
|
|
|
|
Key_TrebleDown = 0x01000077,
|
|
|
|
Key_MediaPlay = 0x01000080,
|
|
|
|
Key_MediaStop = 0x01000081,
|
|
|
|
Key_MediaPrevious = 0x01000082,
|
|
|
|
Key_MediaNext = 0x01000083,
|
|
|
|
Key_MediaRecord = 0x01000084,
|
|
|
|
Key_MediaPause = 0x1000085,
|
|
|
|
Key_MediaTogglePlayPause = 0x1000086,
|
|
|
|
Key_HomePage = 0x01000090,
|
|
|
|
Key_Favorites = 0x01000091,
|
|
|
|
Key_Search = 0x01000092,
|
|
|
|
Key_Standby = 0x01000093,
|
|
|
|
Key_OpenUrl = 0x01000094,
|
|
|
|
Key_LaunchMail = 0x010000a0,
|
|
|
|
Key_LaunchMedia = 0x010000a1,
|
|
|
|
Key_Launch0 = 0x010000a2,
|
|
|
|
Key_Launch1 = 0x010000a3,
|
|
|
|
Key_Launch2 = 0x010000a4,
|
|
|
|
Key_Launch3 = 0x010000a5,
|
|
|
|
Key_Launch4 = 0x010000a6,
|
|
|
|
Key_Launch5 = 0x010000a7,
|
|
|
|
Key_Launch6 = 0x010000a8,
|
|
|
|
Key_Launch7 = 0x010000a9,
|
|
|
|
Key_Launch8 = 0x010000aa,
|
|
|
|
Key_Launch9 = 0x010000ab,
|
|
|
|
Key_LaunchA = 0x010000ac,
|
|
|
|
Key_LaunchB = 0x010000ad,
|
|
|
|
Key_LaunchC = 0x010000ae,
|
|
|
|
Key_LaunchD = 0x010000af,
|
|
|
|
Key_LaunchE = 0x010000b0,
|
|
|
|
Key_LaunchF = 0x010000b1,
|
|
|
|
Key_MonBrightnessUp = 0x010000b2,
|
|
|
|
Key_MonBrightnessDown = 0x010000b3,
|
|
|
|
Key_KeyboardLightOnOff = 0x010000b4,
|
|
|
|
Key_KeyboardBrightnessUp = 0x010000b5,
|
|
|
|
Key_KeyboardBrightnessDown = 0x010000b6,
|
|
|
|
Key_PowerOff = 0x010000b7,
|
|
|
|
Key_WakeUp = 0x010000b8,
|
|
|
|
Key_Eject = 0x010000b9,
|
|
|
|
Key_ScreenSaver = 0x010000ba,
|
|
|
|
Key_WWW = 0x010000bb,
|
|
|
|
Key_Memo = 0x010000bc,
|
|
|
|
Key_LightBulb = 0x010000bd,
|
|
|
|
Key_Shop = 0x010000be,
|
|
|
|
Key_History = 0x010000bf,
|
|
|
|
Key_AddFavorite = 0x010000c0,
|
|
|
|
Key_HotLinks = 0x010000c1,
|
|
|
|
Key_BrightnessAdjust = 0x010000c2,
|
|
|
|
Key_Finance = 0x010000c3,
|
|
|
|
Key_Community = 0x010000c4,
|
2013-07-22 17:24:49 +00:00
|
|
|
Key_AudioRewind = 0x010000c5, // Media rewind
|
2011-04-27 10:05:43 +00:00
|
|
|
Key_BackForward = 0x010000c6,
|
|
|
|
Key_ApplicationLeft = 0x010000c7,
|
|
|
|
Key_ApplicationRight = 0x010000c8,
|
|
|
|
Key_Book = 0x010000c9,
|
|
|
|
Key_CD = 0x010000ca,
|
|
|
|
Key_Calculator = 0x010000cb,
|
|
|
|
Key_ToDoList = 0x010000cc,
|
|
|
|
Key_ClearGrab = 0x010000cd,
|
|
|
|
Key_Close = 0x010000ce,
|
|
|
|
Key_Copy = 0x010000cf,
|
|
|
|
Key_Cut = 0x010000d0,
|
2013-07-22 17:24:49 +00:00
|
|
|
Key_Display = 0x010000d1, // Output switch key
|
2011-04-27 10:05:43 +00:00
|
|
|
Key_DOS = 0x010000d2,
|
|
|
|
Key_Documents = 0x010000d3,
|
|
|
|
Key_Excel = 0x010000d4,
|
|
|
|
Key_Explorer = 0x010000d5,
|
|
|
|
Key_Game = 0x010000d6,
|
|
|
|
Key_Go = 0x010000d7,
|
|
|
|
Key_iTouch = 0x010000d8,
|
|
|
|
Key_LogOff = 0x010000d9,
|
|
|
|
Key_Market = 0x010000da,
|
|
|
|
Key_Meeting = 0x010000db,
|
|
|
|
Key_MenuKB = 0x010000dc,
|
|
|
|
Key_MenuPB = 0x010000dd,
|
|
|
|
Key_MySites = 0x010000de,
|
|
|
|
Key_News = 0x010000df,
|
|
|
|
Key_OfficeHome = 0x010000e0,
|
|
|
|
Key_Option = 0x010000e1,
|
|
|
|
Key_Paste = 0x010000e2,
|
|
|
|
Key_Phone = 0x010000e3,
|
|
|
|
Key_Calendar = 0x010000e4,
|
|
|
|
Key_Reply = 0x010000e5,
|
|
|
|
Key_Reload = 0x010000e6,
|
|
|
|
Key_RotateWindows = 0x010000e7,
|
|
|
|
Key_RotationPB = 0x010000e8,
|
|
|
|
Key_RotationKB = 0x010000e9,
|
|
|
|
Key_Save = 0x010000ea,
|
|
|
|
Key_Send = 0x010000eb,
|
|
|
|
Key_Spell = 0x010000ec,
|
|
|
|
Key_SplitScreen = 0x010000ed,
|
|
|
|
Key_Support = 0x010000ee,
|
|
|
|
Key_TaskPane = 0x010000ef,
|
|
|
|
Key_Terminal = 0x010000f0,
|
|
|
|
Key_Tools = 0x010000f1,
|
|
|
|
Key_Travel = 0x010000f2,
|
|
|
|
Key_Video = 0x010000f3,
|
|
|
|
Key_Word = 0x010000f4,
|
|
|
|
Key_Xfer = 0x010000f5,
|
|
|
|
Key_ZoomIn = 0x010000f6,
|
|
|
|
Key_ZoomOut = 0x010000f7,
|
|
|
|
Key_Away = 0x010000f8,
|
|
|
|
Key_Messenger = 0x010000f9,
|
|
|
|
Key_WebCam = 0x010000fa,
|
|
|
|
Key_MailForward = 0x010000fb,
|
|
|
|
Key_Pictures = 0x010000fc,
|
|
|
|
Key_Music = 0x010000fd,
|
|
|
|
Key_Battery = 0x010000fe,
|
|
|
|
Key_Bluetooth = 0x010000ff,
|
|
|
|
Key_WLAN = 0x01000100,
|
|
|
|
Key_UWB = 0x01000101,
|
2013-07-22 17:24:49 +00:00
|
|
|
Key_AudioForward = 0x01000102, // Media fast-forward
|
|
|
|
Key_AudioRepeat = 0x01000103, // Toggle repeat mode
|
|
|
|
Key_AudioRandomPlay = 0x01000104, // Toggle shuffle mode
|
2011-04-27 10:05:43 +00:00
|
|
|
Key_Subtitle = 0x01000105,
|
|
|
|
Key_AudioCycleTrack = 0x01000106,
|
|
|
|
Key_Time = 0x01000107,
|
|
|
|
Key_Hibernate = 0x01000108,
|
|
|
|
Key_View = 0x01000109,
|
|
|
|
Key_TopMenu = 0x0100010a,
|
|
|
|
Key_PowerDown = 0x0100010b,
|
|
|
|
Key_Suspend = 0x0100010c,
|
|
|
|
Key_ContrastAdjust = 0x0100010d,
|
|
|
|
|
|
|
|
Key_LaunchG = 0x0100010e,
|
|
|
|
Key_LaunchH = 0x0100010f,
|
|
|
|
|
2011-12-07 22:04:07 +00:00
|
|
|
Key_TouchpadToggle = 0x01000110,
|
|
|
|
Key_TouchpadOn = 0x01000111,
|
|
|
|
Key_TouchpadOff = 0x01000112,
|
|
|
|
|
2013-06-13 14:46:50 +00:00
|
|
|
Key_MicMute = 0x01000113,
|
|
|
|
|
2013-06-18 14:18:53 +00:00
|
|
|
Key_Red = 0x01000114,
|
|
|
|
Key_Green = 0x01000115,
|
|
|
|
Key_Yellow = 0x01000116,
|
|
|
|
Key_Blue = 0x01000117,
|
|
|
|
|
|
|
|
Key_ChannelUp = 0x01000118,
|
|
|
|
Key_ChannelDown = 0x01000119,
|
|
|
|
|
2013-07-22 17:24:49 +00:00
|
|
|
Key_Guide = 0x0100011a,
|
|
|
|
Key_Info = 0x0100011b,
|
|
|
|
Key_Settings = 0x0100011c,
|
|
|
|
|
2014-07-02 13:44:49 +00:00
|
|
|
Key_MicVolumeUp = 0x0100011d,
|
|
|
|
Key_MicVolumeDown = 0x0100011e,
|
|
|
|
|
|
|
|
Key_New = 0x01000120,
|
|
|
|
Key_Open = 0x01000121,
|
|
|
|
Key_Find = 0x01000122,
|
|
|
|
Key_Undo = 0x01000123,
|
|
|
|
Key_Redo = 0x01000124,
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
Key_MediaLast = 0x0100ffff,
|
|
|
|
|
|
|
|
// Keypad navigation keys
|
|
|
|
Key_Select = 0x01010000,
|
|
|
|
Key_Yes = 0x01010001,
|
|
|
|
Key_No = 0x01010002,
|
|
|
|
|
|
|
|
// Newer misc keys
|
|
|
|
Key_Cancel = 0x01020001,
|
|
|
|
Key_Printer = 0x01020002,
|
|
|
|
Key_Execute = 0x01020003,
|
|
|
|
Key_Sleep = 0x01020004,
|
|
|
|
Key_Play = 0x01020005, // Not the same as Key_MediaPlay
|
|
|
|
Key_Zoom = 0x01020006,
|
|
|
|
//Key_Jisho = 0x01020007, // IME: Dictionary key
|
|
|
|
//Key_Oyayubi_Left = 0x01020008, // IME: Left Oyayubi key
|
|
|
|
//Key_Oyayubi_Right = 0x01020009, // IME: Right Oyayubi key
|
2013-07-22 17:24:49 +00:00
|
|
|
Key_Exit = 0x0102000a,
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
// Device keys
|
|
|
|
Key_Context1 = 0x01100000,
|
|
|
|
Key_Context2 = 0x01100001,
|
|
|
|
Key_Context3 = 0x01100002,
|
|
|
|
Key_Context4 = 0x01100003,
|
|
|
|
Key_Call = 0x01100004, // set absolute state to in a call (do not toggle state)
|
|
|
|
Key_Hangup = 0x01100005, // set absolute state to hang up (do not toggle state)
|
|
|
|
Key_Flip = 0x01100006,
|
|
|
|
Key_ToggleCallHangup = 0x01100007, // a toggle key for answering, or hanging up, based on current call state
|
|
|
|
Key_VoiceDial = 0x01100008,
|
|
|
|
Key_LastNumberRedial = 0x01100009,
|
|
|
|
|
|
|
|
Key_Camera = 0x01100020,
|
|
|
|
Key_CameraFocus = 0x01100021,
|
|
|
|
|
|
|
|
Key_unknown = 0x01ffffff
|
|
|
|
};
|
|
|
|
|
|
|
|
enum ArrowType {
|
|
|
|
NoArrow,
|
|
|
|
UpArrow,
|
|
|
|
DownArrow,
|
|
|
|
LeftArrow,
|
|
|
|
RightArrow
|
|
|
|
};
|
|
|
|
|
|
|
|
enum PenStyle { // pen style
|
|
|
|
NoPen,
|
|
|
|
SolidLine,
|
|
|
|
DashLine,
|
|
|
|
DotLine,
|
|
|
|
DashDotLine,
|
|
|
|
DashDotDotLine,
|
|
|
|
CustomDashLine
|
|
|
|
#ifndef Q_MOC_RUN
|
|
|
|
, MPenStyle = 0x0f
|
|
|
|
#endif
|
|
|
|
};
|
|
|
|
|
|
|
|
enum PenCapStyle { // line endcap style
|
|
|
|
FlatCap = 0x00,
|
|
|
|
SquareCap = 0x10,
|
|
|
|
RoundCap = 0x20,
|
|
|
|
MPenCapStyle = 0x30
|
|
|
|
};
|
|
|
|
|
|
|
|
enum PenJoinStyle { // line join style
|
|
|
|
MiterJoin = 0x00,
|
|
|
|
BevelJoin = 0x40,
|
|
|
|
RoundJoin = 0x80,
|
|
|
|
SvgMiterJoin = 0x100,
|
|
|
|
MPenJoinStyle = 0x1c0
|
|
|
|
};
|
|
|
|
|
|
|
|
enum BrushStyle { // brush style
|
|
|
|
NoBrush,
|
|
|
|
SolidPattern,
|
|
|
|
Dense1Pattern,
|
|
|
|
Dense2Pattern,
|
|
|
|
Dense3Pattern,
|
|
|
|
Dense4Pattern,
|
|
|
|
Dense5Pattern,
|
|
|
|
Dense6Pattern,
|
|
|
|
Dense7Pattern,
|
|
|
|
HorPattern,
|
|
|
|
VerPattern,
|
|
|
|
CrossPattern,
|
|
|
|
BDiagPattern,
|
|
|
|
FDiagPattern,
|
|
|
|
DiagCrossPattern,
|
|
|
|
LinearGradientPattern,
|
|
|
|
RadialGradientPattern,
|
|
|
|
ConicalGradientPattern,
|
|
|
|
TexturePattern = 24
|
|
|
|
};
|
|
|
|
|
|
|
|
enum SizeMode {
|
|
|
|
AbsoluteSize,
|
|
|
|
RelativeSize
|
|
|
|
};
|
|
|
|
|
|
|
|
enum UIEffect {
|
|
|
|
UI_General,
|
|
|
|
UI_AnimateMenu,
|
|
|
|
UI_FadeMenu,
|
|
|
|
UI_AnimateCombo,
|
|
|
|
UI_AnimateTooltip,
|
|
|
|
UI_FadeTooltip,
|
|
|
|
UI_AnimateToolBox
|
|
|
|
};
|
|
|
|
|
|
|
|
enum CursorShape {
|
|
|
|
ArrowCursor,
|
|
|
|
UpArrowCursor,
|
|
|
|
CrossCursor,
|
|
|
|
WaitCursor,
|
|
|
|
IBeamCursor,
|
|
|
|
SizeVerCursor,
|
|
|
|
SizeHorCursor,
|
|
|
|
SizeBDiagCursor,
|
|
|
|
SizeFDiagCursor,
|
|
|
|
SizeAllCursor,
|
|
|
|
BlankCursor,
|
|
|
|
SplitVCursor,
|
|
|
|
SplitHCursor,
|
|
|
|
PointingHandCursor,
|
|
|
|
ForbiddenCursor,
|
|
|
|
WhatsThisCursor,
|
|
|
|
BusyCursor,
|
|
|
|
OpenHandCursor,
|
|
|
|
ClosedHandCursor,
|
|
|
|
DragCopyCursor,
|
|
|
|
DragMoveCursor,
|
|
|
|
DragLinkCursor,
|
|
|
|
LastCursor = DragLinkCursor,
|
|
|
|
BitmapCursor = 24,
|
|
|
|
CustomCursor = 25
|
|
|
|
};
|
|
|
|
|
|
|
|
enum TextFormat {
|
|
|
|
PlainText,
|
|
|
|
RichText,
|
2012-03-18 04:37:17 +00:00
|
|
|
AutoText
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
enum AspectRatioMode {
|
|
|
|
IgnoreAspectRatio,
|
|
|
|
KeepAspectRatio,
|
|
|
|
KeepAspectRatioByExpanding
|
|
|
|
};
|
|
|
|
|
|
|
|
enum DockWidgetArea {
|
|
|
|
LeftDockWidgetArea = 0x1,
|
|
|
|
RightDockWidgetArea = 0x2,
|
|
|
|
TopDockWidgetArea = 0x4,
|
|
|
|
BottomDockWidgetArea = 0x8,
|
|
|
|
|
|
|
|
DockWidgetArea_Mask = 0xf,
|
|
|
|
AllDockWidgetAreas = DockWidgetArea_Mask,
|
|
|
|
NoDockWidgetArea = 0
|
|
|
|
};
|
|
|
|
enum DockWidgetAreaSizes {
|
|
|
|
NDockWidgetAreas = 4
|
|
|
|
};
|
|
|
|
|
|
|
|
Q_DECLARE_FLAGS(DockWidgetAreas, DockWidgetArea)
|
|
|
|
|
|
|
|
enum ToolBarArea {
|
|
|
|
LeftToolBarArea = 0x1,
|
|
|
|
RightToolBarArea = 0x2,
|
|
|
|
TopToolBarArea = 0x4,
|
|
|
|
BottomToolBarArea = 0x8,
|
|
|
|
|
|
|
|
ToolBarArea_Mask = 0xf,
|
|
|
|
AllToolBarAreas = ToolBarArea_Mask,
|
|
|
|
NoToolBarArea = 0
|
|
|
|
};
|
|
|
|
|
|
|
|
enum ToolBarAreaSizes {
|
|
|
|
NToolBarAreas = 4
|
|
|
|
};
|
|
|
|
|
|
|
|
Q_DECLARE_FLAGS(ToolBarAreas, ToolBarArea)
|
|
|
|
|
|
|
|
enum DateFormat {
|
|
|
|
TextDate, // default Qt
|
|
|
|
ISODate, // ISO 8601
|
|
|
|
SystemLocaleDate, // deprecated
|
|
|
|
LocalDate = SystemLocaleDate, // deprecated
|
|
|
|
LocaleDate, // deprecated
|
|
|
|
SystemLocaleShortDate,
|
|
|
|
SystemLocaleLongDate,
|
|
|
|
DefaultLocaleShortDate,
|
2013-07-13 09:01:34 +00:00
|
|
|
DefaultLocaleLongDate,
|
|
|
|
RFC2822Date // RFC 2822 (+ 850 and 1036 during parsing)
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
enum TimeSpec {
|
|
|
|
LocalTime,
|
|
|
|
UTC,
|
2013-02-11 13:44:37 +00:00
|
|
|
OffsetFromUTC,
|
|
|
|
TimeZone
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
enum DayOfWeek {
|
|
|
|
Monday = 1,
|
|
|
|
Tuesday = 2,
|
|
|
|
Wednesday = 3,
|
|
|
|
Thursday = 4,
|
|
|
|
Friday = 5,
|
|
|
|
Saturday = 6,
|
|
|
|
Sunday = 7
|
|
|
|
};
|
|
|
|
|
|
|
|
enum ScrollBarPolicy {
|
|
|
|
ScrollBarAsNeeded,
|
|
|
|
ScrollBarAlwaysOff,
|
|
|
|
ScrollBarAlwaysOn
|
|
|
|
};
|
|
|
|
|
|
|
|
enum CaseSensitivity {
|
|
|
|
CaseInsensitive,
|
|
|
|
CaseSensitive
|
|
|
|
};
|
|
|
|
|
|
|
|
enum Corner {
|
|
|
|
TopLeftCorner = 0x00000,
|
|
|
|
TopRightCorner = 0x00001,
|
|
|
|
BottomLeftCorner = 0x00002,
|
|
|
|
BottomRightCorner = 0x00003
|
|
|
|
};
|
2013-03-11 18:19:32 +00:00
|
|
|
|
|
|
|
enum Edge {
|
|
|
|
TopEdge = 0x00001,
|
|
|
|
LeftEdge = 0x00002,
|
|
|
|
RightEdge = 0x00004,
|
|
|
|
BottomEdge = 0x00008
|
|
|
|
};
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2014-01-17 13:57:24 +00:00
|
|
|
Q_DECLARE_FLAGS(Edges, Edge)
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
enum ConnectionType {
|
|
|
|
AutoConnection,
|
|
|
|
DirectConnection,
|
|
|
|
QueuedConnection,
|
|
|
|
BlockingQueuedConnection,
|
|
|
|
UniqueConnection = 0x80
|
|
|
|
};
|
|
|
|
|
|
|
|
enum ShortcutContext {
|
|
|
|
WidgetShortcut,
|
|
|
|
WindowShortcut,
|
|
|
|
ApplicationShortcut,
|
|
|
|
WidgetWithChildrenShortcut
|
|
|
|
};
|
|
|
|
|
|
|
|
enum FillRule {
|
|
|
|
OddEvenFill,
|
|
|
|
WindingFill
|
|
|
|
};
|
|
|
|
|
|
|
|
enum MaskMode {
|
|
|
|
MaskInColor,
|
|
|
|
MaskOutColor
|
|
|
|
};
|
|
|
|
|
|
|
|
enum ClipOperation {
|
|
|
|
NoClip,
|
|
|
|
ReplaceClip,
|
2011-06-28 13:08:12 +00:00
|
|
|
IntersectClip
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
// Shape = 0x1, BoundingRect = 0x2
|
|
|
|
enum ItemSelectionMode {
|
|
|
|
ContainsItemShape = 0x0,
|
|
|
|
IntersectsItemShape = 0x1,
|
|
|
|
ContainsItemBoundingRect = 0x2,
|
|
|
|
IntersectsItemBoundingRect = 0x3
|
|
|
|
};
|
|
|
|
|
2015-01-04 18:41:25 +00:00
|
|
|
enum ItemSelectionOperation {
|
|
|
|
ReplaceSelection,
|
|
|
|
AddToSelection
|
|
|
|
};
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
enum TransformationMode {
|
|
|
|
FastTransformation,
|
|
|
|
SmoothTransformation
|
|
|
|
};
|
|
|
|
|
|
|
|
enum Axis {
|
|
|
|
XAxis,
|
|
|
|
YAxis,
|
|
|
|
ZAxis
|
|
|
|
};
|
|
|
|
|
|
|
|
enum FocusReason {
|
|
|
|
MouseFocusReason,
|
|
|
|
TabFocusReason,
|
|
|
|
BacktabFocusReason,
|
|
|
|
ActiveWindowFocusReason,
|
|
|
|
PopupFocusReason,
|
|
|
|
ShortcutFocusReason,
|
|
|
|
MenuBarFocusReason,
|
|
|
|
OtherFocusReason,
|
|
|
|
NoFocusReason
|
|
|
|
};
|
|
|
|
|
|
|
|
enum ContextMenuPolicy {
|
|
|
|
NoContextMenu,
|
|
|
|
DefaultContextMenu,
|
|
|
|
ActionsContextMenu,
|
|
|
|
CustomContextMenu,
|
|
|
|
PreventContextMenu
|
|
|
|
};
|
|
|
|
|
|
|
|
enum InputMethodQuery {
|
2011-09-05 10:53:33 +00:00
|
|
|
ImEnabled = 0x1,
|
2011-09-08 08:57:54 +00:00
|
|
|
ImCursorRectangle = 0x2,
|
|
|
|
ImMicroFocus = 0x2, // deprecated
|
2011-09-05 10:53:33 +00:00
|
|
|
ImFont = 0x4,
|
|
|
|
ImCursorPosition = 0x8,
|
|
|
|
ImSurroundingText = 0x10,
|
|
|
|
ImCurrentSelection = 0x20,
|
|
|
|
ImMaximumTextLength = 0x40,
|
|
|
|
ImAnchorPosition = 0x80,
|
|
|
|
ImHints = 0x100,
|
|
|
|
ImPreferredLanguage = 0x200,
|
|
|
|
|
2014-01-20 11:30:35 +00:00
|
|
|
ImAbsolutePosition = 0x400,
|
|
|
|
ImTextBeforeCursor = 0x800,
|
|
|
|
ImTextAfterCursor = 0x1000,
|
2015-06-01 09:14:04 +00:00
|
|
|
ImEnterKeyType = 0x2000,
|
2015-11-26 09:37:24 +00:00
|
|
|
ImAnchorRectangle = 0x4000,
|
2014-01-20 11:30:35 +00:00
|
|
|
|
2011-09-05 10:53:33 +00:00
|
|
|
ImPlatformData = 0x80000000,
|
2011-09-12 18:54:24 +00:00
|
|
|
ImQueryInput = ImCursorRectangle | ImCursorPosition | ImSurroundingText |
|
2016-04-07 12:35:46 +00:00
|
|
|
ImCurrentSelection | ImAnchorRectangle | ImAnchorPosition,
|
2011-09-05 10:53:33 +00:00
|
|
|
ImQueryAll = 0xffffffff
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
2011-09-05 10:53:33 +00:00
|
|
|
Q_DECLARE_FLAGS(InputMethodQueries, InputMethodQuery)
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
enum InputMethodHint {
|
|
|
|
ImhNone = 0x0,
|
2011-09-05 10:53:33 +00:00
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
ImhHiddenText = 0x1,
|
2011-09-05 10:53:33 +00:00
|
|
|
ImhSensitiveData = 0x2,
|
|
|
|
ImhNoAutoUppercase = 0x4,
|
|
|
|
ImhPreferNumbers = 0x8,
|
|
|
|
ImhPreferUppercase = 0x10,
|
|
|
|
ImhPreferLowercase = 0x20,
|
|
|
|
ImhNoPredictiveText = 0x40,
|
|
|
|
|
|
|
|
ImhDate = 0x80,
|
|
|
|
ImhTime = 0x100,
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2012-01-02 14:49:07 +00:00
|
|
|
ImhPreferLatin = 0x200,
|
|
|
|
|
2013-01-22 16:18:36 +00:00
|
|
|
ImhMultiLine = 0x400,
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
ImhDigitsOnly = 0x10000,
|
|
|
|
ImhFormattedNumbersOnly = 0x20000,
|
|
|
|
ImhUppercaseOnly = 0x40000,
|
|
|
|
ImhLowercaseOnly = 0x80000,
|
|
|
|
ImhDialableCharactersOnly = 0x100000,
|
|
|
|
ImhEmailCharactersOnly = 0x200000,
|
|
|
|
ImhUrlCharactersOnly = 0x400000,
|
2012-01-02 14:49:07 +00:00
|
|
|
ImhLatinOnly = 0x800000,
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
ImhExclusiveInputMask = 0xffff0000
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(InputMethodHints, InputMethodHint)
|
|
|
|
|
2015-06-01 09:14:04 +00:00
|
|
|
enum EnterKeyType {
|
|
|
|
EnterKeyDefault,
|
|
|
|
EnterKeyReturn,
|
|
|
|
EnterKeyDone,
|
|
|
|
EnterKeyGo,
|
|
|
|
EnterKeySend,
|
|
|
|
EnterKeySearch,
|
|
|
|
EnterKeyNext,
|
|
|
|
EnterKeyPrevious
|
2015-03-30 11:58:12 +00:00
|
|
|
};
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
enum ToolButtonStyle {
|
|
|
|
ToolButtonIconOnly,
|
|
|
|
ToolButtonTextOnly,
|
|
|
|
ToolButtonTextBesideIcon,
|
|
|
|
ToolButtonTextUnderIcon,
|
|
|
|
ToolButtonFollowStyle
|
|
|
|
};
|
|
|
|
|
|
|
|
enum LayoutDirection {
|
|
|
|
LeftToRight,
|
|
|
|
RightToLeft,
|
|
|
|
LayoutDirectionAuto
|
|
|
|
};
|
|
|
|
|
|
|
|
enum AnchorPoint {
|
|
|
|
AnchorLeft = 0,
|
|
|
|
AnchorHorizontalCenter,
|
|
|
|
AnchorRight,
|
|
|
|
AnchorTop,
|
|
|
|
AnchorVerticalCenter,
|
|
|
|
AnchorBottom
|
|
|
|
};
|
|
|
|
|
2011-08-15 11:24:23 +00:00
|
|
|
enum FindChildOption {
|
|
|
|
FindDirectChildrenOnly = 0x0,
|
|
|
|
FindChildrenRecursively = 0x1
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(FindChildOptions, FindChildOption)
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
enum DropAction {
|
|
|
|
CopyAction = 0x1,
|
|
|
|
MoveAction = 0x2,
|
|
|
|
LinkAction = 0x4,
|
|
|
|
ActionMask = 0xff,
|
|
|
|
TargetMoveAction = 0x8002,
|
|
|
|
IgnoreAction = 0x0
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(DropActions, DropAction)
|
|
|
|
|
|
|
|
enum CheckState {
|
|
|
|
Unchecked,
|
|
|
|
PartiallyChecked,
|
|
|
|
Checked
|
|
|
|
};
|
|
|
|
|
|
|
|
enum ItemDataRole {
|
|
|
|
DisplayRole = 0,
|
|
|
|
DecorationRole = 1,
|
|
|
|
EditRole = 2,
|
|
|
|
ToolTipRole = 3,
|
|
|
|
StatusTipRole = 4,
|
|
|
|
WhatsThisRole = 5,
|
|
|
|
// Metadata
|
|
|
|
FontRole = 6,
|
|
|
|
TextAlignmentRole = 7,
|
|
|
|
BackgroundColorRole = 8,
|
|
|
|
BackgroundRole = 8,
|
|
|
|
TextColorRole = 9,
|
|
|
|
ForegroundRole = 9,
|
|
|
|
CheckStateRole = 10,
|
|
|
|
// Accessibility
|
|
|
|
AccessibleTextRole = 11,
|
|
|
|
AccessibleDescriptionRole = 12,
|
|
|
|
// More general purpose
|
|
|
|
SizeHintRole = 13,
|
|
|
|
InitialSortOrderRole = 14,
|
|
|
|
// Internal UiLib roles. Start worrying when public roles go that high.
|
|
|
|
DisplayPropertyRole = 27,
|
|
|
|
DecorationPropertyRole = 28,
|
|
|
|
ToolTipPropertyRole = 29,
|
|
|
|
StatusTipPropertyRole = 30,
|
|
|
|
WhatsThisPropertyRole = 31,
|
|
|
|
// Reserved
|
2011-12-19 17:49:44 +00:00
|
|
|
UserRole = 0x0100
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
enum ItemFlag {
|
|
|
|
NoItemFlags = 0,
|
|
|
|
ItemIsSelectable = 1,
|
|
|
|
ItemIsEditable = 2,
|
|
|
|
ItemIsDragEnabled = 4,
|
|
|
|
ItemIsDropEnabled = 8,
|
|
|
|
ItemIsUserCheckable = 16,
|
|
|
|
ItemIsEnabled = 32,
|
2015-05-06 15:57:36 +00:00
|
|
|
ItemIsAutoTristate = 64,
|
|
|
|
#if QT_DEPRECATED_SINCE(5, 6)
|
|
|
|
ItemIsTristate = ItemIsAutoTristate,
|
|
|
|
#endif
|
2015-01-15 13:12:34 +00:00
|
|
|
ItemNeverHasChildren = 128,
|
|
|
|
ItemIsUserTristate = 256
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(ItemFlags, ItemFlag)
|
|
|
|
|
|
|
|
enum MatchFlag {
|
|
|
|
MatchExactly = 0,
|
|
|
|
MatchContains = 1,
|
|
|
|
MatchStartsWith = 2,
|
|
|
|
MatchEndsWith = 3,
|
|
|
|
MatchRegExp = 4,
|
|
|
|
MatchWildcard = 5,
|
|
|
|
MatchFixedString = 8,
|
|
|
|
MatchCaseSensitive = 16,
|
|
|
|
MatchWrap = 32,
|
|
|
|
MatchRecursive = 64
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(MatchFlags, MatchFlag)
|
|
|
|
|
2011-10-21 07:55:40 +00:00
|
|
|
typedef void * HANDLE;
|
2012-08-13 09:01:57 +00:00
|
|
|
#if QT_DEPRECATED_SINCE(5, 0)
|
2011-04-27 10:05:43 +00:00
|
|
|
typedef WindowFlags WFlags;
|
2012-08-13 09:01:57 +00:00
|
|
|
#endif
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
enum WindowModality {
|
|
|
|
NonModal,
|
|
|
|
WindowModal,
|
|
|
|
ApplicationModal
|
|
|
|
};
|
|
|
|
|
|
|
|
enum TextInteractionFlag {
|
|
|
|
NoTextInteraction = 0,
|
|
|
|
TextSelectableByMouse = 1,
|
|
|
|
TextSelectableByKeyboard = 2,
|
|
|
|
LinksAccessibleByMouse = 4,
|
|
|
|
LinksAccessibleByKeyboard = 8,
|
|
|
|
TextEditable = 16,
|
|
|
|
|
|
|
|
TextEditorInteraction = TextSelectableByMouse | TextSelectableByKeyboard | TextEditable,
|
|
|
|
TextBrowserInteraction = TextSelectableByMouse | LinksAccessibleByMouse | LinksAccessibleByKeyboard
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(TextInteractionFlags, TextInteractionFlag)
|
|
|
|
|
|
|
|
enum EventPriority {
|
|
|
|
HighEventPriority = 1,
|
|
|
|
NormalEventPriority = 0,
|
|
|
|
LowEventPriority = -1
|
|
|
|
};
|
|
|
|
|
|
|
|
enum SizeHint {
|
|
|
|
MinimumSize,
|
|
|
|
PreferredSize,
|
|
|
|
MaximumSize,
|
|
|
|
MinimumDescent,
|
|
|
|
NSizeHints
|
|
|
|
};
|
|
|
|
|
|
|
|
enum WindowFrameSection {
|
|
|
|
NoSection,
|
|
|
|
LeftSection, // For resize
|
|
|
|
TopLeftSection,
|
|
|
|
TopSection,
|
|
|
|
TopRightSection,
|
|
|
|
RightSection,
|
|
|
|
BottomRightSection,
|
|
|
|
BottomSection,
|
|
|
|
BottomLeftSection,
|
|
|
|
TitleBarArea // For move
|
|
|
|
};
|
|
|
|
|
2015-04-09 21:14:21 +00:00
|
|
|
#if defined(Q_COMPILER_CLASS_ENUM) && defined(Q_COMPILER_CONSTEXPR)
|
|
|
|
enum class Initialization {
|
|
|
|
Uninitialized
|
|
|
|
};
|
|
|
|
static constexpr Q_DECL_UNUSED Initialization Uninitialized = Initialization::Uninitialized;
|
|
|
|
#else
|
2011-04-27 10:05:43 +00:00
|
|
|
enum Initialization {
|
|
|
|
Uninitialized
|
|
|
|
};
|
2015-04-09 21:14:21 +00:00
|
|
|
#endif
|
2011-04-27 10:05:43 +00:00
|
|
|
|
|
|
|
enum CoordinateSystem {
|
|
|
|
DeviceCoordinates,
|
|
|
|
LogicalCoordinates
|
|
|
|
};
|
|
|
|
|
|
|
|
enum TouchPointState {
|
|
|
|
TouchPointPressed = 0x01,
|
|
|
|
TouchPointMoved = 0x02,
|
|
|
|
TouchPointStationary = 0x04,
|
2011-11-30 17:19:27 +00:00
|
|
|
TouchPointReleased = 0x08
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(TouchPointStates, TouchPointState)
|
|
|
|
|
|
|
|
#ifndef QT_NO_GESTURES
|
|
|
|
enum GestureState
|
|
|
|
{
|
|
|
|
NoGesture,
|
|
|
|
GestureStarted = 1,
|
|
|
|
GestureUpdated = 2,
|
|
|
|
GestureFinished = 3,
|
|
|
|
GestureCanceled = 4
|
|
|
|
};
|
|
|
|
|
|
|
|
enum GestureType
|
|
|
|
{
|
|
|
|
TapGesture = 1,
|
|
|
|
TapAndHoldGesture = 2,
|
|
|
|
PanGesture = 3,
|
|
|
|
PinchGesture = 4,
|
|
|
|
SwipeGesture = 5,
|
|
|
|
|
|
|
|
CustomGesture = 0x0100,
|
|
|
|
|
|
|
|
LastGestureType = ~0u
|
|
|
|
};
|
|
|
|
|
|
|
|
enum GestureFlag
|
|
|
|
{
|
|
|
|
DontStartGestureOnChildren = 0x01,
|
|
|
|
ReceivePartialGestures = 0x02,
|
|
|
|
IgnoredGesturesPropagateToParent = 0x04
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(GestureFlags, GestureFlag)
|
2013-10-02 06:52:26 +00:00
|
|
|
|
|
|
|
enum NativeGestureType
|
|
|
|
{
|
|
|
|
BeginNativeGesture,
|
|
|
|
EndNativeGesture,
|
|
|
|
PanNativeGesture,
|
|
|
|
ZoomNativeGesture,
|
|
|
|
SmartZoomNativeGesture,
|
|
|
|
RotateNativeGesture,
|
|
|
|
SwipeNativeGesture
|
|
|
|
};
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
#endif // QT_NO_GESTURES
|
|
|
|
|
|
|
|
enum NavigationMode
|
|
|
|
{
|
|
|
|
NavigationModeNone,
|
|
|
|
NavigationModeKeypadTabOrder,
|
|
|
|
NavigationModeKeypadDirectional,
|
|
|
|
NavigationModeCursorAuto,
|
|
|
|
NavigationModeCursorForceVisible
|
|
|
|
};
|
2011-05-11 10:13:01 +00:00
|
|
|
|
|
|
|
enum CursorMoveStyle {
|
|
|
|
LogicalMoveStyle,
|
|
|
|
VisualMoveStyle
|
|
|
|
};
|
2011-12-21 10:32:43 +00:00
|
|
|
|
|
|
|
enum TimerType {
|
|
|
|
PreciseTimer,
|
|
|
|
CoarseTimer,
|
|
|
|
VeryCoarseTimer
|
|
|
|
};
|
2013-08-10 13:19:27 +00:00
|
|
|
|
|
|
|
enum ScrollPhase {
|
2016-03-08 22:37:55 +00:00
|
|
|
NoScrollPhase = 0,
|
2016-02-10 19:30:33 +00:00
|
|
|
ScrollBegin,
|
2013-08-10 13:19:27 +00:00
|
|
|
ScrollUpdate,
|
|
|
|
ScrollEnd
|
|
|
|
};
|
2013-09-14 18:31:54 +00:00
|
|
|
|
|
|
|
enum MouseEventSource {
|
|
|
|
MouseEventNotSynthesized,
|
|
|
|
MouseEventSynthesizedBySystem,
|
2015-06-15 12:55:47 +00:00
|
|
|
MouseEventSynthesizedByQt,
|
|
|
|
MouseEventSynthesizedByApplication
|
2013-09-14 18:31:54 +00:00
|
|
|
};
|
2014-01-19 18:44:31 +00:00
|
|
|
|
|
|
|
enum MouseEventFlag {
|
|
|
|
MouseEventCreatedDoubleClick = 0x01,
|
|
|
|
MouseEventFlagMask = 0xFF
|
|
|
|
};
|
|
|
|
Q_DECLARE_FLAGS(MouseEventFlags, MouseEventFlag)
|
|
|
|
|
2014-08-10 12:09:55 +00:00
|
|
|
#ifndef Q_QDOC
|
|
|
|
// NOTE: Generally, do not add QT_Q_ENUM if a corresponding Q_Q_FLAG exists.
|
|
|
|
QT_Q_ENUM(ScrollBarPolicy)
|
|
|
|
QT_Q_ENUM(FocusPolicy)
|
|
|
|
QT_Q_ENUM(ContextMenuPolicy)
|
|
|
|
QT_Q_ENUM(ArrowType)
|
|
|
|
QT_Q_ENUM(ToolButtonStyle)
|
|
|
|
QT_Q_ENUM(PenStyle)
|
|
|
|
QT_Q_ENUM(PenCapStyle)
|
|
|
|
QT_Q_ENUM(PenJoinStyle)
|
|
|
|
QT_Q_ENUM(BrushStyle)
|
|
|
|
QT_Q_ENUM(FillRule)
|
|
|
|
QT_Q_ENUM(MaskMode)
|
|
|
|
QT_Q_ENUM(BGMode)
|
|
|
|
QT_Q_ENUM(ClipOperation)
|
|
|
|
QT_Q_ENUM(SizeMode)
|
|
|
|
QT_Q_ENUM(Axis)
|
|
|
|
QT_Q_ENUM(Corner)
|
|
|
|
QT_Q_ENUM(Edge)
|
|
|
|
QT_Q_ENUM(LayoutDirection)
|
|
|
|
QT_Q_ENUM(SizeHint)
|
|
|
|
QT_Q_ENUM(Orientation)
|
|
|
|
QT_Q_ENUM(DropAction)
|
|
|
|
QT_Q_FLAG(Alignment)
|
|
|
|
QT_Q_FLAG(Orientations)
|
|
|
|
QT_Q_FLAG(DropActions)
|
|
|
|
QT_Q_FLAG(Edges)
|
|
|
|
QT_Q_FLAG(DockWidgetAreas)
|
|
|
|
QT_Q_FLAG(ToolBarAreas)
|
|
|
|
QT_Q_ENUM(DockWidgetArea)
|
|
|
|
QT_Q_ENUM(ToolBarArea)
|
|
|
|
QT_Q_ENUM(TextFormat)
|
|
|
|
QT_Q_ENUM(TextElideMode)
|
|
|
|
QT_Q_ENUM(DateFormat)
|
|
|
|
QT_Q_ENUM(TimeSpec)
|
|
|
|
QT_Q_ENUM(DayOfWeek)
|
|
|
|
QT_Q_ENUM(CursorShape)
|
|
|
|
QT_Q_ENUM(GlobalColor)
|
|
|
|
QT_Q_ENUM(AspectRatioMode)
|
|
|
|
QT_Q_ENUM(TransformationMode)
|
|
|
|
QT_Q_FLAG(ImageConversionFlags)
|
|
|
|
QT_Q_ENUM(Key)
|
|
|
|
QT_Q_ENUM(ShortcutContext)
|
|
|
|
QT_Q_ENUM(TextInteractionFlag)
|
|
|
|
QT_Q_FLAG(TextInteractionFlags)
|
|
|
|
QT_Q_ENUM(ItemSelectionMode)
|
|
|
|
QT_Q_ENUM(ItemSelectionOperation)
|
|
|
|
QT_Q_FLAG(ItemFlags)
|
|
|
|
QT_Q_ENUM(CheckState)
|
2015-02-25 11:58:24 +00:00
|
|
|
QT_Q_ENUM(ItemDataRole)
|
2014-08-10 12:09:55 +00:00
|
|
|
QT_Q_ENUM(SortOrder)
|
|
|
|
QT_Q_ENUM(CaseSensitivity)
|
|
|
|
QT_Q_FLAG(MatchFlags)
|
|
|
|
QT_Q_FLAG(KeyboardModifiers)
|
|
|
|
QT_Q_FLAG(MouseButtons)
|
|
|
|
QT_Q_ENUM(WindowType)
|
|
|
|
QT_Q_ENUM(WindowState)
|
|
|
|
QT_Q_ENUM(WindowModality)
|
|
|
|
QT_Q_ENUM(WidgetAttribute)
|
|
|
|
QT_Q_ENUM(ApplicationAttribute)
|
|
|
|
QT_Q_FLAG(WindowFlags)
|
|
|
|
QT_Q_FLAG(WindowStates)
|
|
|
|
QT_Q_ENUM(FocusReason)
|
|
|
|
QT_Q_ENUM(InputMethodHint)
|
|
|
|
QT_Q_ENUM(InputMethodQuery)
|
|
|
|
QT_Q_FLAG(InputMethodHints)
|
2015-06-01 09:14:04 +00:00
|
|
|
QT_Q_ENUM(EnterKeyType)
|
2014-08-10 12:09:55 +00:00
|
|
|
QT_Q_FLAG(InputMethodQueries)
|
2015-01-13 14:54:15 +00:00
|
|
|
QT_Q_FLAG(TouchPointStates)
|
2014-08-10 12:09:55 +00:00
|
|
|
QT_Q_ENUM(ScreenOrientation)
|
|
|
|
QT_Q_FLAG(ScreenOrientations)
|
|
|
|
QT_Q_ENUM(ConnectionType)
|
|
|
|
QT_Q_ENUM(ApplicationState)
|
|
|
|
#ifndef QT_NO_GESTURES
|
|
|
|
QT_Q_ENUM(GestureState)
|
|
|
|
QT_Q_ENUM(GestureType)
|
|
|
|
QT_Q_ENUM(NativeGestureType)
|
|
|
|
#endif
|
|
|
|
QT_Q_ENUM(CursorMoveStyle)
|
|
|
|
QT_Q_ENUM(TimerType)
|
|
|
|
QT_Q_ENUM(ScrollPhase)
|
|
|
|
QT_Q_ENUM(MouseEventSource)
|
2015-03-27 15:55:38 +00:00
|
|
|
QT_Q_FLAG(MouseEventFlag)
|
2015-01-30 10:23:56 +00:00
|
|
|
QT_Q_ENUM(TabFocusBehavior)
|
2014-08-10 12:09:55 +00:00
|
|
|
#endif // Q_DOC
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
}
|
|
|
|
#ifdef Q_MOC_RUN
|
|
|
|
;
|
|
|
|
#endif
|
|
|
|
|
2014-08-10 12:09:55 +00:00
|
|
|
#undef QT_Q_ENUM
|
|
|
|
#undef QT_Q_FLAG
|
|
|
|
|
2011-04-27 10:05:43 +00:00
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::MouseButtons)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::Orientations)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::KeyboardModifiers)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::WindowFlags)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::Alignment)
|
2014-01-17 13:57:24 +00:00
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::Edges)
|
2011-04-27 10:05:43 +00:00
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::ImageConversionFlags)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::DockWidgetAreas)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::ToolBarAreas)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::WindowStates)
|
2011-10-08 16:45:22 +00:00
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::ScreenOrientations)
|
2011-04-27 10:05:43 +00:00
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::DropActions)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::ItemFlags)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::MatchFlags)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::TextInteractionFlags)
|
2012-01-04 10:51:30 +00:00
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::InputMethodQueries)
|
2011-04-27 10:05:43 +00:00
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::InputMethodHints)
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::TouchPointStates)
|
2014-01-19 18:44:31 +00:00
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::MouseEventFlags)
|
2011-04-27 10:05:43 +00:00
|
|
|
#ifndef QT_NO_GESTURES
|
|
|
|
Q_DECLARE_OPERATORS_FOR_FLAGS(Qt::GestureFlags)
|
|
|
|
#endif
|
|
|
|
|
|
|
|
typedef bool (*qInternalCallback)(void **);
|
|
|
|
|
|
|
|
class Q_CORE_EXPORT QInternal {
|
|
|
|
public:
|
|
|
|
enum PaintDeviceFlags {
|
|
|
|
UnknownDevice = 0x00,
|
|
|
|
Widget = 0x01,
|
|
|
|
Pixmap = 0x02,
|
|
|
|
Image = 0x03,
|
|
|
|
Printer = 0x04,
|
|
|
|
Picture = 0x05,
|
|
|
|
Pbuffer = 0x06, // GL pbuffer
|
|
|
|
FramebufferObject = 0x07, // GL framebuffer object
|
|
|
|
CustomRaster = 0x08,
|
|
|
|
MacQuartz = 0x09,
|
|
|
|
PaintBuffer = 0x0a,
|
|
|
|
OpenGL = 0x0b
|
|
|
|
};
|
|
|
|
enum RelayoutType {
|
|
|
|
RelayoutNormal,
|
|
|
|
RelayoutDragging,
|
|
|
|
RelayoutDropped
|
|
|
|
};
|
|
|
|
|
|
|
|
enum DockPosition {
|
|
|
|
LeftDock,
|
|
|
|
RightDock,
|
|
|
|
TopDock,
|
|
|
|
BottomDock,
|
|
|
|
DockCount
|
|
|
|
};
|
2011-12-05 12:46:39 +00:00
|
|
|
|
|
|
|
enum Callback {
|
|
|
|
EventNotifyCallback,
|
|
|
|
LastCallback
|
|
|
|
};
|
|
|
|
static bool registerCallback(Callback, qInternalCallback);
|
|
|
|
static bool unregisterCallback(Callback, qInternalCallback);
|
|
|
|
static bool activateCallbacks(Callback, void **);
|
2011-04-27 10:05:43 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
QT_END_NAMESPACE
|
|
|
|
|
|
|
|
#endif // QNAMESPACE_H
|