QtCanpool 3.3.0
载入中...
搜索中...
未找到
qxdock_global.h
浏览该文件的文档.
1
5#pragma once
6
7#include <QtCore/qglobal.h>
8
9// The X11 helpers in this library talk to the X server directly through xcb, so
10// they only exist on a Linux desktop. Qt for WebAssembly reports Q_OS_UNIX as
11// well, but there is neither an X server nor an xcb there, so it has to be
12// excluded explicitly, exactly like Windows and macOS are.
13#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS) && !defined(Q_OS_WASM)
14#define QX_DOCK_X11 1
15#else
16#define QX_DOCK_X11 0
17#endif
18
19#ifndef Q_NULLPTR
20#define Q_NULLPTR 0
21#endif // Q_NULLPTR
22
23#ifndef Q_DECL_OVERRIDE
24#define Q_DECL_OVERRIDE override
25#endif // Q_DECL_OVERRIDE
26
27#ifndef QX_VERSION_JOIN
28#define QX_VERSION_JOIN2(major, minor, patch) major##.##minor##.##patch
29#define QX_VERSION_JOIN(major, minor, patch) QX_VERSION_JOIN2(major, minor, patch)
30#endif // QX_VERSION_JOIN
31
32#ifndef QX_DECLARE_PRIVATE
33
34#define QX_DECLARE_PRIVATE(Class) \
35 Class##Private *d_ptr; \
36 Q_DECLARE_PRIVATE(Class)
37
38#define QX_DECLARE_PUBLIC(Class) \
39 Class *q_ptr; \
40 inline void setPublic(Class *ptr) \
41 { \
42 q_ptr = ptr; \
43 } \
44 Q_DECLARE_PUBLIC(Class)
45
46#define QX_INIT_PRIVATE(Class) \
47 d_ptr = new Class##Private(); \
48 d_ptr->setPublic(this);
49
50#define QX_SET_PRIVATE(Dptr) \
51 d_ptr = Dptr; \
52 d_ptr->setPublic(this);
53
54#define QX_FINI_PRIVATE() \
55 delete d_ptr; \
56 d_ptr = Q_NULLPTR;
57
58#endif // QX_DECLARE_PRIVATE
59
60#if !defined(QX_DOCK_NAMESPACE_DISABLE)
61#define QX_DOCK_NAMESPACE QxDock
62#endif
63
64#if !defined(QX_DOCK_NAMESPACE)
65#define QX_DOCK_BEGIN_NAMESPACE
66#define QX_DOCK_END_NAMESPACE
67#define QX_DOCK_USE_NAMESPACE
68#define QX_DOCK_PREPEND_NAMESPACE(name) name
69#else
70#define QX_DOCK_BEGIN_NAMESPACE \
71 namespace QX_DOCK_NAMESPACE \
72 {
73#define QX_DOCK_END_NAMESPACE }
74#define QX_DOCK_USE_NAMESPACE using namespace QX_DOCK_NAMESPACE;
75#define QX_DOCK_PREPEND_NAMESPACE(name) QX_DOCK_NAMESPACE::name
76#endif // QX_DOCK_NAMESPACE
77
78#ifndef QX_DOCK_LIBRARY_STATIC
79#ifdef QX_DOCK_LIBRARY
80#define QX_DOCK_EXPORT Q_DECL_EXPORT
81#else
82#define QX_DOCK_EXPORT Q_DECL_IMPORT
83#endif // QX_DOCK_LIBRARY
84#else // QX_DOCK_LIBRARY_STATIC
85#define QX_DOCK_EXPORT
86#endif // QX_DOCK_LIBRARY_STATIC
87
88#define QX_DOCK_VERSION_MAJOR 0
89#define QX_DOCK_VERSION_MINOR 1
90#define QX_DOCK_VERSION_PATCH 0
91/*
92 QX_DOCK_VERSION is (major << 16) + (minor << 8) + patch.
93 can be used like #if (QX_DOCK_VERSION >= QT_VERSION_CHECK(0, 5, 3))
94*/
95#define QX_DOCK_VERSION QT_VERSION_CHECK(QX_DOCK_VERSION_MAJOR, QX_DOCK_VERSION_MINOR, QX_DOCK_VERSION_PATCH)
96
97#define QX_DOCK_VERSION_STR \
98 QT_STRINGIFY(QX_VERSION_JOIN(QX_DOCK_VERSION_MAJOR, QX_DOCK_VERSION_MINOR, QX_DOCK_VERSION_PATCH))
99
100#ifndef QX_DOCK_DISABLE_DEPRECATED_BEFORE
101#define QX_DOCK_DISABLE_DEPRECATED_BEFORE QX_DOCK_VERSION
102#endif
103
104/*
105 QX_DOCK_DEPRECATED_SINCE(major, minor) evaluates as true if the QxDock version is greater than
106 the deprecation point specified.
107
108 Use it to specify from which version of QxDock a function or class has been deprecated
109
110 Example:
111 #if QX_DOCK_DEPRECATED_SINCE(0,6)
112 QT_DEPRECATED void deprecatedFunction(); // function deprecated since QxDock 0.6
113 #endif
114 */
115#ifdef QT_DEPRECATED
116#define QX_DOCK_DEPRECATED_SINCE(major, minor) (QT_VERSION_CHECK(major, minor, 0) > QX_DOCK_DISABLE_DEPRECATED_BEFORE)
117#else
118#define QX_DOCK_DEPRECATED_SINCE(major, minor) 0
119#endif
120
121namespace Qx
122{
123
144
145Q_DECLARE_FLAGS(DockWidgetAreas, DockWidgetArea)
146Q_DECLARE_OPERATORS_FOR_FLAGS(DockWidgetAreas)
147
152
160
167
179
184
192
193}
DockWidgetAreaSizes
@ NDockWidgetAreas
DockIconSizes
@ NDockIconSizes
DockSideBarArea
@ DockSideBarTop
@ DockSideBarBottom
@ DockSideBarLeft
@ DockSideBarRight
@ DockSideBarNone
DockWidgetArea
@ LeftAutoHideArea
@ BottomDockWidgetArea
@ OuterDockAreas
@ NoDockWidgetArea
@ RightAutoHideArea
@ RightDockWidgetArea
@ LeftDockWidgetArea
@ AllDockAreas
@ TopDockWidgetArea
@ BottomAutoHideArea
@ InvalidDockWidgetArea
@ CenterDockWidgetArea
@ AutoHideDockAreas
@ TopAutoHideArea
DockDragState
@ DockDraggingTab
@ DockDraggingFloatingWidget
@ DockDraggingMousePressed
@ DockDraggingInactive
@ DockTabInvalidIndex
@ DockTabDefaultInsertIndex
@ DockAutoHideIcon
@ DockPanelMenuIcon
@ DockPanelUndockIcon
@ DockTabCloseIcon
@ DockPanelCloseIcon
@ DockPanelMinimizeIcon
DockBitwiseOperator
@ DockBitwiseAnd
@ DockBitwiseOr
DockTitleBarButton
@ TitleBarButtonClose
@ TitleBarButtonAutoHide
@ TitleBarButtonTabsMenu
@ TitleBarButtonUndock
@ TitleBarButtonMinimize