-
Notifications
You must be signed in to change notification settings - Fork 1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Extract header qtversionchecks.h from qglobal.h
Task-number: QTBUG-99313 Change-Id: Iaaa6a055367e861d095b92e3e85e5bc340e6bbc1 Reviewed-by: Thiago Macieira <[email protected]>
- Loading branch information
Sona Kurazyan
committed
Jul 29, 2022
1 parent
908d048
commit 8d6b274
Showing
5 changed files
with
69 additions
and
52 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
// Copyright (C) 2022 The Qt Company Ltd. | ||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only | ||
|
||
/*! | ||
\macro QT_VERSION_CHECK(major, minor, patch) | ||
\relates <QtVersionChecks> | ||
Turns the \a major, \a minor and \a patch numbers of a version into an | ||
integer that encodes all three. When expressed in hexadecimal, this integer | ||
is of form \c 0xMMNNPP wherein \c{0xMM ==} \a major, \c{0xNN ==} \a minor, | ||
and \c{0xPP ==} \a patch. This can be compared with another similarly | ||
processed version ID. | ||
Example: | ||
\snippet code/src_corelib_global_qglobal.cpp qt-version-check | ||
\note the parameters are read as integers in the normal way, so should | ||
normally be written in decimal (so a \c 0x prefix must be used if writing | ||
them in hexadecimal). Thus \c{QT_VERSION_CHECK(5, 15, 0)} is equal to \c | ||
0x050f00, which could equally be written \c{QT_VERSION_CHECK(5, 0xf, 0)}. | ||
\sa QT_VERSION | ||
*/ | ||
|
||
/*! | ||
\macro QT_VERSION | ||
\relates <QtVersionChecks> | ||
This macro expands to a numeric value of the same form as \l | ||
QT_VERSION_CHECK() constructs, that specifies the version of Qt with which | ||
code using it is compiled. For example, if you compile your application with | ||
Qt 6.1.2, the QT_VERSION macro will expand to \c 0x060102, the same as | ||
\c{QT_VERSION_CHECK(6, 1, 2)}. Note that this need not agree with the | ||
version the application will find itself using at \e runtime. | ||
You can use QT_VERSION to select the latest Qt features where available | ||
while falling back to older implementations otherwise. Using | ||
QT_VERSION_CHECK() for the value to compare with is recommended. | ||
Example: | ||
\snippet code/src_corelib_global_qglobal.cpp 16 | ||
\sa QT_VERSION_STR, QT_VERSION_CHECK(), qVersion() | ||
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
// Copyright (C) 2022 The Qt Company Ltd. | ||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only | ||
|
||
#ifndef QTVERSIONCHECKS_H | ||
#define QTVERSIONCHECKS_H | ||
|
||
#if 0 | ||
#pragma qt_class(QtVersionChecks) | ||
#pragma qt_sync_stop_processing | ||
#endif | ||
|
||
/* | ||
QT_VERSION is (major << 16) | (minor << 8) | patch. | ||
*/ | ||
#define QT_VERSION QT_VERSION_CHECK(QT_VERSION_MAJOR, QT_VERSION_MINOR, QT_VERSION_PATCH) | ||
/* | ||
can be used like #if (QT_VERSION >= QT_VERSION_CHECK(6, 4, 0)) | ||
*/ | ||
#define QT_VERSION_CHECK(major, minor, patch) ((major<<16)|(minor<<8)|(patch)) | ||
|
||
#endif /* QTVERSIONCHECKS_H */ |