31 #define TTK_QT_VERSION_CHECK(major, minor, patch) (QT_VERSION >= QT_VERSION_CHECK(major, minor, patch))
35 # define qPrintable(s) QString(s).toLocal8Bit().constData()
38 #ifndef qUtf8Printable
39 # define qUtf8Printable(s) QString(s).toUtf8().constData()
43 #if !TTK_QT_VERSION_CHECK(5,7,0)
46 Q_DECL_CONSTEXPR
typename std::add_const<T>::type &
qAsConst(
T &t) noexcept {
return t; }
50 #elif TTK_QT_VERSION_CHECK(6,6,0)
51 # define qAsConst std::as_const
59 T v = qobject_cast<
T>(object);
66 T v = qobject_cast<
T>(object);
70 # define object_cast qobject_cast
74 # define TTKObjectCast(x, y) (object_cast<x>(y))
76 # define TTKObjectCast(x, y) ((x)(y))
79 #if defined TTK_CAST && TTK_QT_VERSION_CHECK(5,15,0)
80 # define TTKVoidCast(x) (x)(void*)
82 # define TTKVoidCast(x) (x)
88 # define TTK_DEPRECATED __declspec(deprecated)
89 # define TTK_DEPRECATED_X(text) __declspec(deprecated(text))
91 # define TTK_DEPRECATED __attribute__((__deprecated__))
92 # define TTK_DEPRECATED_X(text) __attribute__((__deprecated__(text)))
96 #if !TTK_QT_VERSION_CHECK(5,0,0) && defined(Q_CC_GNU)
97 # if defined(__GXX_EXPERIMENTAL_CXX0X__) || TTK_HAS_CXX11
98 # define Q_COMPILER_DEFAULT_MEMBERS
99 # define Q_COMPILER_DELETE_MEMBERS
100 # define Q_COMPILER_NULLPTR
101 # define Q_COMPILER_EXPLICIT_OVERRIDES
102 # define Q_COMPILER_CONSTEXPR
108 #ifdef Q_COMPILER_NULLPTR
109 # define TTK_NULLPTR nullptr
111 # define TTK_NULLPTR NULL
114 #ifdef Q_COMPILER_DEFAULT_MEMBERS
115 # define TTK_DEFAULT = default
120 #ifdef Q_COMPILER_DELETE_MEMBERS
121 # define TTK_DELETE = delete
126 #ifdef Q_COMPILER_EXPLICIT_OVERRIDES
127 # define TTK_OVERRIDE override
128 # define TTK_FINAL final
130 # ifndef TTK_OVERRIDE
131 # define TTK_OVERRIDE
138 #if defined Q_CC_MSVC && _MSC_VER <= 1800
139 # define constexpr const
142 #if defined Q_COMPILER_CONSTEXPR
143 # if defined(__cpp_constexpr) && __cpp_constexpr >= 201304L
144 # define TTK_CONSTEXPR constexpr
145 # define TTK_RCONSTEXPR constexpr
147 # define TTK_CONSTEXPR constexpr
148 # define TTK_RCONSTEXPR const
151 # define TTK_CONSTEXPR const
152 # define TTK_RCONSTEXPR const
157 #define TTK_DISABLE_COPY(Class) \
159 Class(const Class &) TTK_DELETE; \
160 Class &operator=(const Class &) TTK_DELETE;
163 #define TTK_DISABLE_INIT_COPY(Class) \
164 TTK_DISABLE_COPY(Class) \
168 #define TTK_DECLARE_MODULE(Class) \
170 inline static QString className() \
177 #define TTK_DECLARE_LIST(Class) using Class##List = QList<Class>
178 #define TTK_DECLARE_FLAG(Flags, Enum) using Flags = QFlags<Enum>
180 #define TTK_SIGNAL SIGNAL
181 #define TTK_SLOT SLOT
183 #if TTK_QT_VERSION_CHECK(6,0,0)
184 # define qint qintptr
189 #define TTK_FILE_SUFFIX(fin) fin.suffix().toLower()
193 # define TTK_SIGNLE_SHOT(...) TTK_PP_OVERLOAD(__TTK_SIGNLE_SHOT__, __VA_ARGS__)(__VA_ARGS__)
195 # define TTK_SIGNLE_SHOT(...) TTK_PP_CAT(TTK_PP_OVERLOAD(__TTK_SIGNLE_SHOT__, __VA_ARGS__)(__VA_ARGS__), TTK_PP_EMPTY())
197 #define __TTK_SIGNLE_SHOT__2(a, s) QTimer::singleShot(TTK_DN_ONCE, this, s(a()));
198 #define __TTK_SIGNLE_SHOT__3(a, b, s) QTimer::singleShot(TTK_DN_ONCE, a, s(b()));
199 #define __TTK_SIGNLE_SHOT__4(a, b, c, s) QTimer::singleShot(a, b, s(c()));
210 #if !TTK_QT_VERSION_CHECK(5,10,0)
211 using qsizetype = QIntegerForSizeof<std::size_t>::Signed;
214 #endif // TTKQTGLOBAL_H
#define TTKStaticCast(x, y)
QMap< qint64, QString > TTKIntStringMap
QMap< QString, QVariant > TTKVariantMap
QList< QVariant > TTKVariantList
QMap< QString, QString > TTKStringMap