What's New in Qt 6.0
Build System Changes in Qt 6
Building Qt from sources now requires CMake and Ninja. See Build System Changes in Qt 6 for more details on this and other changes in configure.
Changes to Supported Modules
Qt 6.0 is streamlined compared to Qt 5 and some modules are no longer in the default installation of Qt 6.0. Because of the modularized structure of Qt, new modules or previous Qt 5 modules may appear in future releases of Qt 6. For more information, visit the All Modules page.
The Changes to Qt Modules in Qt 6 has a list of API changes.
New Modules in Qt 6.0
The following are new modules in Qt 6.0.
- Qt 5 Core Compatibility APIs
- Qt Shader Tools - for graphics and compute shaders
Removed Modules in Qt 6.0
The following are Qt 5 modules that are not in Qt 6.0. They may be re-introduced in a future release of Qt 6.
Module | qmake | Comments |
---|---|---|
Qt Android Extras | androidextras | See Changes to Qt Extras Modules |
Qt Bluetooth | bluetooth | |
Qt Charts | charts | |
Qt Data Visualization | datavisualization | |
Qt Graphical Effects | only QML types | |
Qt Location | location | |
Qt Mac Extras | macextras | See Changes to Qt Extras Modules |
Qt Multimedia | multimedia | |
Qt Multimedia Widgets | multimediawidgets | |
Qt NFC | nfc | |
Qt Positioning | positioning | |
Qt Purchasing | purchasing | |
Qt Quick Extras | Merged into Qt Quick Controls | |
Qt Remote Objects | remoteobjects | |
Qt Script | qtscript | |
Qt SCXML | scxml | |
Qt Script Tools | scripttools | |
Qt Sensors | sensors | |
Qt Serial Bus | serialbus | |
Qt Serial Port | serialport | |
Qt Speech | texttospeech | |
Qt WebChannel | webchannel | |
Qt WebEngine | webenginecore | |
Qt WebSockets | websockets | |
Qt WebView | webview | |
Qt Windows Extras | winextras | See Changes to Qt Extras Modules |
Qt X11 Extras | x11extras | See Changes to Qt Extras Modules |
Qt XML Patterns | xmlpatterns |
New Classes and Functions
The section provides a comprehensive list of all new classes and functions introduced in Qt 6.
- New Namespaces
- New Classes
- New Member Functions
- New Functions in Namespaces
- New Global Functions
- New Macros
- New Enum Types
- New Type Aliases
- New Properties
- New Variables
- New QML Types
- New QML Properties
New Namespaces
namespace | QNativeInterface |
namespace | QQuickOpenGLUtils |
New Classes
- A
- QAbstractFileIconProvider
- QAction
- QActionGroup
- QAdoptSharedDataTag
- QAndroidOffscreenSurface (QNativeInterface)
- QAnyStringView
- QAxBaseObject
- QAxBaseWidget
- QAxObjectInterface
- P
- QPageRanges
- QPartialOrdering
- QPickingProxy (Qt3DRender)
- QPointerEvent
- QPointingDevice
- QPromise
- QProperty
- QPropertyData
New Member Functions
Class QBluetoothDeviceInfo:
QList<QBluetoothUuid> | serviceUuids() const |
Class QAbstractItemModel:
virtual bool | clearItemData(const QModelIndex &index) |
virtual void | multiData(const QModelIndex &index, QModelRoleDataSpan roleDataSpan) const |
Class QAbstractProxyModel:
virtual bool | clearItemData(const QModelIndex &index) override |
Class QBitArray:
quint32 | toUInt32(QSysInfo::Endian endianness, bool *ok) const |
Class QByteArray:
int | compare(QByteArrayView bv, Qt::CaseSensitivity cs) const |
bool | contains(QByteArrayView bv) const |
qsizetype | count(QByteArrayView bv) const |
bool | endsWith(QByteArrayView bv) const |
QByteArray | first(qsizetype n) const |
qsizetype | indexOf(QByteArrayView bv, qsizetype from) const |
QByteArray & | insert(qsizetype i, QByteArrayView data) |
QByteArray | last(qsizetype n) const |
qsizetype | lastIndexOf(QByteArrayView bv, qsizetype from) const |
void | push_back(QByteArrayView str) |
void | push_front(QByteArrayView str) |
QByteArray & | replace(QByteArrayView before, QByteArrayView after) |
QByteArray | sliced(qsizetype pos, qsizetype n) const |
QByteArray | sliced(qsizetype pos) const |
bool | startsWith(QByteArrayView bv) const |
Class QChar:
Class QDate:
QDate | fromString(QStringView string, Qt::DateFormat format) |
QDate | fromString(QStringView string, QStringView format, QCalendar cal) |
QDate | fromString(const QString &string, QStringView format, QCalendar cal) |
Class QDataStream:
QDataStream & | operator<<(char16_t c) |
QDataStream & | operator<<(char32_t c) |
QDataStreamIfHasOStreamOperators<T1, T2> | operator<<(QDataStream &out, const std::pair<T1, T2> &pair) |
QDataStream & | operator>>(char16_t &c) |
QDataStream & | operator>>(char32_t &c) |
QDataStreamIfHasIStreamOperators<T1, T2> | operator>>(QDataStream &in, std::pair<T1, T2> &pair) |
Class QDateTime:
QDateTime | fromString(QStringView string, Qt::DateFormat format) |
QDateTime | fromString(QStringView string, QStringView format, QCalendar cal) |
QDateTime | fromString(const QString &string, QStringView format, QCalendar cal) |
Class QDebug:
QDebug & | operator<<(const char16_t *t) |
QDebug & | operator<<(QUtf8StringView s) |
QDebug & | operator<<(QByteArrayView t) |
QString | toString(T &&object) |
Class QDir:
void | addSearchPath(const QString &prefix, const std::filesystem::path &path) |
std::filesystem::path | filesystemAbsolutePath() const |
std::filesystem::path | filesystemCanonicalPath() const |
std::filesystem::path | filesystemPath() const |
void | setPath(const std::filesystem::path &path) |
Class QEvent:
virtual QEvent * | clone() const |
bool | isInputEvent() const |
bool | isPointerEvent() const |
bool | isSinglePointEvent() const |
Class QExplicitlySharedDataPointer:
Class QFile:
bool | copy(const std::filesystem::path &newName) |
std::filesystem::path | filesystemFileName() const |
bool | link(const std::filesystem::path &newName) |
QFileDevice::Permissions | permissions(const std::filesystem::path &filename) |
bool | rename(const std::filesystem::path &newName) |
void | setFileName(const std::filesystem::path &name) |
bool | setPermissions(const std::filesystem::path &filename, QFileDevice::Permissions permissionSpec) |
Class QFileInfo:
std::filesystem::path | filesystemAbsoluteFilePath() const |
std::filesystem::path | filesystemAbsolutePath() const |
std::filesystem::path | filesystemCanonicalFilePath() const |
std::filesystem::path | filesystemCanonicalPath() const |
std::filesystem::path | filesystemFilePath() const |
std::filesystem::path | filesystemPath() const |
std::filesystem::path | filesystemSymLinkTarget() const |
void | setFile(const std::filesystem::path &file) |
void | stat() |
Class QFuture:
bool | isSuspended() const |
bool | isSuspending() const |
bool | isValid() const |
QFuture<T> | onCanceled(Function &&handler) |
QFuture<T> | onFailed(Function &&handler) |
void | setSuspended(bool suspend) |
void | suspend() |
T | takeResult() |
QFuture<ResultType<Function>> | then(Function &&function) |
QFuture<ResultType<Function>> | then(QtFuture::Launch policy, Function &&function) |
QFuture<ResultType<Function>> | then(QThreadPool *pool, Function &&function) |
void | toggleSuspended() |
Class QFutureWatcher:
bool | isSuspended() const |
bool | isSuspending() const |
void | setSuspended(bool suspend) |
void | suspend() |
void | suspended() |
void | suspending() |
void | toggleSuspended() |
Class QIODevice:
virtual qint64 | skipData(qint64 maxSize) |
Class QHash:
size_t | qHash(char8_t key, size_t seed) |
size_t | qHash(char16_t key, size_t seed) |
size_t | qHash(char32_t key, size_t seed) |
size_t | qHash(wchar_t key, size_t seed) |
size_t | qHash(const QByteArrayView &key, size_t seed) |
size_t | qHash(std::nullptr_t key, size_t seed) |
size_t | qHash(QPoint key, size_t seed) |
size_t | qHash(const QTypeRevision &key, size_t seed) |
size_t | qHashMulti(size_t seed, const T &... args) |
size_t | qHashMultiCommutative(size_t seed, const T &... args) |
Class QJsonValue:
qint64 | toInteger(qint64 defaultValue) const |
Class QLatin1String:
QLatin1String | first(qsizetype n) const |
QLatin1String | last(qsizetype n) const |
QLatin1String | sliced(qsizetype pos) const |
QLatin1String | sliced(qsizetype pos, qsizetype n) const |
QString | toString() const |
decltype(qTokenize(*this, std::forward<Needle>(needle), flags...)) | tokenize(Needle &&sep, Flags... flags) const |
Class QLibraryInfo:
QString | path(QLibraryInfo::LibraryPath p) |
Class QList:
void | append(QList<T> &&value) |
QList<T> | first(qsizetype n) const |
QList<T> | last(qsizetype n) const |
QList<T> | operator+(QList<T> &&other) const |
QList<T> & | operator+=(QList<T> &&other) |
QList<T> & | operator<<(QList<T> &&other) |
QList<T> | sliced(qsizetype pos, qsizetype n) const |
QList<T> | sliced(qsizetype pos) const |
Class QLocale:
QString | quoteString(QStringView str, QLocale::QuotationStyle style) const |
Class QMap:
QMap::iterator | erase(QMap::const_iterator first, QMap::const_iterator last) |
Class QMarginsF:
QMarginsF | operator|(const QMarginsF &m1, const QMarginsF &m2) |
Class QMargins:
QMargins | operator|(const QMargins &m1, const QMargins &m2) |
Class QMetaMethod:
QMetaType | parameterMetaType(int index) const |
QByteArray | parameterTypeName(int index) const |
int | relativeMethodIndex() const |
QMetaType | returnMetaType() const |
Class QMetaProperty:
QUntypedBindable | bindable(QObject *object) const |
bool | isBindable() const |
QMetaType | metaType() const |
int | typeId() const |
Class QMetaType:
qsizetype | alignOf() const |
QPartialOrdering | compare(const void *lhs, const void *rhs) const |
bool | equals(const void *lhs, const void *rhs) const |
bool | hasRegisteredDebugStreamOperator() const |
bool | hasRegisteredMutableViewFunction() |
bool | registerMutableView(MemberFunction function) |
bool | registerMutableView(MemberFunctionOk function) |
bool | registerMutableView(UnaryFunction function) |
bool | view(QMetaType fromType, void *from, QMetaType toType, void *to) |
Class QMetaSequence:
QMetaSequence | fromContainer() |
Class QModelIndex:
void | multiData(QModelRoleDataSpan roleDataSpan) const |
Class QMultiHash:
QMultiHash<Key, T> & | unite(const QHash<Key, T> &other) |
Class QMultiMap:
QMultiMap::iterator | erase(QMultiMap::const_iterator first, QMultiMap::const_iterator last) |
Class QPersistentModelIndex:
void | multiData(QModelRoleDataSpan roleDataSpan) const |
Class QPointer:
T * | get() const |
Class QProcess:
std::function<void ()> | childProcessModifier() const |
void | setChildProcessModifier(const std::function<void ()> &modifier) |
void | startCommand(const QString &command, QIODeviceBase::OpenMode mode) |
Class QRect:
QRect | span(const QPoint &p1, const QPoint &p2) |
Class QRegularExpression:
QRegularExpression | fromWildcard(QStringView pattern, Qt::CaseSensitivity cs, QRegularExpression::WildcardConversionOptions options) |
QRegularExpressionMatchIterator | globalMatch(QStringView subjectView, qsizetype offset, QRegularExpression::MatchType matchType, QRegularExpression::MatchOptions matchOptions) const |
QRegularExpressionMatch | match(QStringView subjectView, qsizetype offset, QRegularExpression::MatchType matchType, QRegularExpression::MatchOptions matchOptions) const |
Class QSharedDataPointer:
Class QSortFilterProxyModel:
void | autoAcceptChildRowsChanged(bool autoAcceptChildRows) |
void | invalidateColumnsFilter() |
void | invalidateRowsFilter() |
Class QString:
qsizetype | count(QStringView str, Qt::CaseSensitivity cs) const |
QString | first(qsizetype n) const |
QString | fromLatin1(QByteArrayView str) |
QString | fromLocal8Bit(QByteArrayView str) |
QString | fromUtf8(QByteArrayView str) |
QString | fromUtf8(const char8_t *str, qsizetype size) |
QString & | insert(qsizetype position, QStringView str) |
QString | last(qsizetype n) const |
int | localeAwareCompare(QStringView other) const |
int | localeAwareCompare(QStringView s1, QStringView s2) |
QString & | operator+=(QStringView str) |
QString & | prepend(QStringView str) |
QString | sliced(qsizetype pos, qsizetype n) const |
QString | sliced(qsizetype pos) const |
decltype(qTokenize(*this, std::forward<Needle>(needle), flags...)) | tokenize(Needle &&sep, Flags... flags) const & |
decltype(qTokenize(std::move(*this), std::forward<Needle>(needle), flags...)) | tokenize(Needle &&sep, Flags... flags) && |
Class QStringListModel:
virtual bool | clearItemData(const QModelIndex &index) override |
Class QStringView:
QStringView::const_pointer | constData() const |
qsizetype | count(QChar ch, Qt::CaseSensitivity cs) const |
qsizetype | count(QStringView str, Qt::CaseSensitivity cs) const |
QStringView | first(qsizetype n) const |
QStringView | last(qsizetype n) const |
QStringView | sliced(qsizetype pos, qsizetype n) const |
QStringView | sliced(qsizetype pos) const |
QList<QStringView> | split(QStringView sep, Qt::SplitBehavior behavior, Qt::CaseSensitivity cs) const |
QList<QStringView> | split(QChar sep, Qt::SplitBehavior behavior, Qt::CaseSensitivity cs) const |
QList<QStringView> | split(const QRegularExpression &re, Qt::SplitBehavior behavior) const |
CFStringRef | toCFString() const |
double | toDouble(bool *ok) const |
float | toFloat(bool *ok) const |
int | toInt(bool *ok, int base) const |
long | toLong(bool *ok, int base) const |
qlonglong | toLongLong(bool *ok, int base) const |
NSString * | toNSString() const |
short | toShort(bool *ok, int base) const |
uint | toUInt(bool *ok, int base) const |
ulong | toULong(bool *ok, int base) const |
qulonglong | toULongLong(bool *ok, int base) const |
ushort | toUShort(bool *ok, int base) const |
decltype(qTokenize(*this, std::forward<Needle>(needle), flags...)) | tokenize(Needle &&sep, Flags... flags) const |
Class QStringTokenizer:
decltype(QtPrivate::Tok::TokenizerResult<Haystack, Needle>({std::forward<Haystack>(h), std::forward<Needle>(n), flags...})) | qTokenize(Haystack &&haystack, Needle &&needle, Flags... flags) |
Class QThreadPool:
bool | contains(const QThread *thread) const |
Class QTime:
QTime | fromString(QStringView string, Qt::DateFormat format) |
QTime | fromString(QStringView string, QStringView format) |
QTime | fromString(const QString &string, QStringView format) |
Class QTypeRevision:
QDataStream & | operator<<(QDataStream &out, const QTypeRevision &revision) |
QDataStream & | operator>>(QDataStream &in, QTypeRevision &revision) |
Class QUnhandledException:
Class QVariant:
bool | canConvert(QMetaType type) const |
QPartialOrdering | compare(const QVariant &lhs, const QVariant &rhs) |
bool | convert(QMetaType targetType) |
QMetaType | metaType() const |
Class QVarLengthArray:
QVarLengthArray<T, Prealloc> & | operator=(QVarLengthArray<T, Prealloc> &&other) |
Class QAction:
QList<QObject *> | associatedObjects() const |
Class QIcon:
QPixmap | pixmap(const QSize &size, qreal devicePixelRatio, QIcon::Mode mode, QIcon::State state) const |
Class QImage:
QImage | convertedTo(QImage::Format format, Qt::ImageConversionFlags flags) const & |
QImage | convertedTo(QImage::Format format, Qt::ImageConversionFlags flags) && |
QImage | fromHBITMAP(HBITMAP hbitmap) |
QImage | fromHICON(HICON icon) |
void | mirror(bool horizontal, bool vertical) |
void | rgbSwap() |
HBITMAP | toHBITMAP() const |
HICON | toHICON(const QImage &mask) const |
Class QImageIOHandler:
bool | allocateImage(QSize size, QImage::Format format, QImage *image) |
Class QImageReader:
int | allocationLimit() |
void | setAllocationLimit(int mbLimit) |
Class QInputEvent:
const QInputDevice * | device() const |
Class QKeyEvent:
QKeyCombination | keyCombination() const |
Class QPagedPaintDevice:
QPageRanges | pageRanges() const |
virtual void | setPageRanges(const QPageRanges &ranges) |
Class QRegion:
Class QShortcut:
QList<QKeySequence> | keys() const |
void | setKeys(QKeySequence::StandardKey key) |
void | setKeys(const QList<QKeySequence> &keys) |
Class QStandardItem:
virtual void | multiData(QModelRoleDataSpan roleDataSpan) const |
Class QSurfaceFormat:
void | setColorSpace(const QColorSpace &colorSpace) |
Class QTextCharFormat:
qreal | baselineOffset() const |
void | setBaselineOffset(qreal baseline) |
void | setSubScriptBaseline(qreal baseline) |
void | setSuperScriptBaseline(qreal baseline) |
qreal | subScriptBaseline() const |
qreal | superScriptBaseline() const |
Class QTextDocument:
qreal | baselineOffset() const |
void | setBaselineOffset(qreal baseline) |
void | setSubScriptBaseline(qreal baseline) |
void | setSuperScriptBaseline(qreal baseline) |
qreal | subScriptBaseline() const |
qreal | superScriptBaseline() const |
Class QWindow:
QPointF | mapFromGlobal(const QPointF &pos) const |
QPointF | mapToGlobal(const QPointF &pos) const |
virtual void | paintEvent(QPaintEvent *ev) |
Class QSslConfiguration:
bool | handshakeMustInterruptOnError() const |
bool | missingCertificateIsFatal() const |
void | setCiphers(const QString &ciphers) |
void | setHandshakeMustInterruptOnError(bool interrupt) |
void | setMissingCertificateIsFatal(bool cannotRecover) |
Class QSslSocket:
void | continueInterruptedHandshake() |
Class QSGVulkanTexture:
QSGTexture * | fromNative(VkImage image, VkImageLayout layout, QQuickWindow *window, const QSize &size, QQuickWindow::CreateTextureOptions options) |
Class QSGOpenGLTexture:
QSGTexture * | fromNative(GLuint textureId, QQuickWindow *window, const QSize &size, QQuickWindow::CreateTextureOptions options) |
Class QQmlApplicationEngine:
void | setExtraFileSelectors(const QStringList &extraFileSelectors) |
Class QSGMetalTexture:
QSGTexture * | fromNative(int texture, QQuickWindow *window, const QSize &size, QQuickWindow::CreateTextureOptions options) |
Class QSGD3D11Texture:
QSGTexture * | fromNative(void *texture, QQuickWindow *window, const QSize &size, QQuickWindow::CreateTextureOptions options) |
Class QQuickItem:
virtual void | geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry) |
Class QQuickRenderControl:
void | beginFrame() |
void | endFrame() |
bool | initialize() |
int | samples() const |
void | setSamples(int sampleCount) |
QQuickWindow * | window() const |
Class QQuickWindow:
void | afterFrameEnd() |
void | beforeFrameBegin() |
QSGRendererInterface::GraphicsApi | graphicsApi() |
QQuickGraphicsConfiguration | graphicsConfiguration() const |
QQuickGraphicsDevice | graphicsDevice() const |
QQuickRenderTarget | renderTarget() const |
void | setGraphicsConfiguration(const QQuickGraphicsConfiguration &config) |
void | setGraphicsDevice(const QQuickGraphicsDevice &device) |
void | setRenderTarget(const QQuickRenderTarget &target) |
Class QSGRenderNode:
virtual void | prepare() |
Class QCanBusDeviceInfo:
QString | alias() const |
Class QModbusReply:
QList<QModbusDevice::IntermediateError> | intermediateErrors() const |
Class QSqlDriver:
virtual int | maximumIdentifierLength(QSqlDriver::IdentifierType type) const |
Class QSqlQuery:
QVariantList | boundValues() const |
Class QAbstractItemView:
virtual void | initViewItemOption(QStyleOptionViewItem *option) const |
virtual QAbstractItemDelegate * | itemDelegateForIndex(const QModelIndex &index) const |
Class QGraphicsLayoutItem:
virtual bool | isEmpty() const |
Class QHeaderView:
virtual void | initStyleOptionForIndex(QStyleOptionHeader *option, int logicalIndex) const |
Class QLabel:
QPicture | picture() const |
Class QWidget:
QPointF | mapFrom(const QWidget *parent, const QPointF &pos) const |
QPointF | mapFromGlobal(const QPointF &pos) const |
QPointF | mapFromParent(const QPointF &pos) const |
QPointF | mapTo(const QWidget *parent, const QPointF &pos) const |
QPointF | mapToGlobal(const QPointF &pos) const |
QPointF | mapToParent(const QPointF &pos) const |
New Functions in Namespaces
void | resetOpenGLState() |
QTaskBuilder<Task> | task(Task &&task) |
New Global Functions
long double | qDegreesToRadians(long double degrees) |
long double | qRadiansToDegrees(long double radians) |
New Macros
QT_IMPLICIT_QCHAR_CONSTRUCTION | |
QT_IMPLICIT_QFILEINFO_CONSTRUCTION | |
Q_MOC_INCLUDE | |
Q_OBJECT_BINDABLE_PROPERTY(containingClass, type, name, signal) | |
Q_OBJECT_BINDABLE_PROPERTY_WITH_ARGS(containingClass, type, name, initialvalue, signal) |
New Enum Types
enum | IntermediateError { ResponseCrcError, ResponseRequestMismatch } |
enum | WildcardConversionOption { DefaultWildcardConversion, UnanchoredWildcardConversion } |
enum class | AlertLevel { Warning, Fatal, Unknown } |
enum class | AlertType { CloseNotify, UnexpectedMessage, BadRecordMac, RecordOverflow, DecompressionFailure, …, UnknownAlertMessage } |
enum class | Launch { Sync, Async, Inherit } |
New Type Aliases
New Properties
- sortIndex : const
- readOnly : const
- autoAcceptChildRows :
- additionalShmFormats : const