New Features in Qt 6.0: Difference between revisions
Jump to navigation
Jump to search
(→Within QtCore: Fixed typo. Removed dots at the end of list sentences (unified across the whole list).) |
(→Removed Modules: section updated) |
||
Line 37: | Line 37: | ||
== Removed Modules == | == Removed Modules == | ||
The following modules are removed and not planned to be developed further. Other modules that are not part of Qt 6.0 are considered for candidates to support with later Qt 6.x releases or as additional libraries on top of the baseline Qt release. | |||
* Qt Multimedia Widgets | |||
* Qt Graphical Effects | |||
* Qt Purchasing | |||
* Qt Quick Extras | |||
* Qt Quick WebGL | |||
* Qt Script | |||
* Qt XML Patterns | |||
See [[Checklist for Qt 6.0 inclusion]] for the selection process. | See [[Checklist for Qt 6.0 inclusion]] for the selection process. | ||
Code from these Qt ''<platform>'' Extras modules will | Code from these Qt ''<platform>'' Extras modules will |
Revision as of 07:40, 19 October 2020
New Features (within existing modules)
There's been lots of clean-up all round and many deprecated methods have been removed. The Qt 6 documentation snapshot pages, automatically generated by QDoc based on the code, include lists of Obsolete Classes and New Classes and Functions.
Within QtCore
- QByteArrayView now provides a light-weight way to view the content of a QByteArray or other char-equivalent array data
- QPromise allows setting values, progress and exceptions to QFuture
- QFuture supports attaching continuations
- Signals can now be converted to QFuture objects
- QVector and QList are unified. QList is updated and should be used by default when array-like behaviour is needed
- QList, QString and QByteArray now have optimized complexity of insertion at the beginning (a.k.a. prepend)
- Q_DECLARE_TYPEINFO() mechanism simplified:
- Trivially copyable and trivially destructible types are automatically treated as relocatable (Q_RELOCATABLE_TYPE)
- Q_MOVABLE_TYPE and Q_RELOCATABLE_TYPE mean the same thing
- Container classes now use qsizetype as an underlying type for size and indexing. Additionally, several related classes got updated in a similar fashion (e.g. QTextBoundaryFinder and QRegularExpression). This change allows containers to hold more than 2^31 items on 64 bit platforms
New Modules
- Qt5Compat
- Compatibility library providing access to legacy APIs removed in Qt 6.
Platform Changes
All
- Qt is now built with CMake.
- Qt High DPI scaling is now activated by default; the default rounding policy is PassThrough
Linux
macOS
Windows
Removed Modules
The following modules are removed and not planned to be developed further. Other modules that are not part of Qt 6.0 are considered for candidates to support with later Qt 6.x releases or as additional libraries on top of the baseline Qt release.
- Qt Multimedia Widgets
- Qt Graphical Effects
- Qt Purchasing
- Qt Quick Extras
- Qt Quick WebGL
- Qt Script
- Qt XML Patterns
See Checklist for Qt 6.0 inclusion for the selection process.
Code from these Qt <platform> Extras modules will find new homes in more relevant modules over time, and any remaining APIs considered for inclusion in later 6.x releases:
- Qt Android Extras
- Qt Mac Extras
- Qt X11 Extras