New Classes and Functions in Qt 6.3 | Qt 6.12
Description: A list of new APIs in Qt 6.3.

- Qt 6.12
- New Classes and Functions in Qt 6.3
- Qt 6.12.0 Reference Documentation

# New Classes and Functions in Qt 6.3

This page contains a comprehensive list of all new classes and functions introduced in Qt 6.3.

- New Classes
- New Member Functions
- New Functions in Namespaces
- New Global Functions
- New Macros
- New Enum Types
- New Enum Values
- New Properties
- New Variables
- New QML Types
- New QML Properties
- New QML Methods

### New Classes

O
  QOpcUaDataValue
  QOpcUaHistoryData
  QOpcUaHistoryReadRawRequest
  QOpcUaHistoryReadResponse

W
  WhenAnyResult (QtFuture)

### New Member Functions

Class QAbstract3DGraph:

`(since 6.3)` bool | hasSeries(QAbstract3DSeries *series) const

Class QBluetoothDeviceInfo:

`(since 6.3)` QMultiHash<QBluetoothUuid, QByteArray> | serviceData() const
`(since 6.3)` QByteArray | serviceData(const QBluetoothUuid &serviceId) const
`(since 6.3)` QList<QBluetoothUuid> | serviceIds() const
`(since 6.3)` bool | setServiceData(const QBluetoothUuid &serviceId, const QByteArray &data)

Class QByteArray:

`(since 6.3)` bool | isValidUtf8() const

Class QByteArrayList:

`(since 6.3)` QByteArray | join(QByteArrayView separator = {}) const

Class QByteArrayMatcher:

`(since 6.3)` qsizetype | indexIn(QByteArrayView data, qsizetype from = 0) const

Class QByteArrayView:

`(since 6.3)` bool | isValidUtf8() const
`(since 6.3)` double | toDouble(bool *ok = nullptr) const
`(since 6.3)` float | toFloat(bool *ok = nullptr) const
`(since 6.3)` int | toInt(bool *ok = nullptr, int base = 10) const
`(since 6.3)` long | toLong(bool *ok = nullptr, int base = 10) const
`(since 6.3)` qlonglong | toLongLong(bool *ok = nullptr, int base = 10) const
`(since 6.3)` short | toShort(bool *ok = nullptr, int base = 10) const
`(since 6.3)` uint | toUInt(bool *ok = nullptr, int base = 10) const
`(since 6.3)` ulong | toULong(bool *ok = nullptr, int base = 10) const
`(since 6.3)` qulonglong | toULongLong(bool *ok = nullptr, int base = 10) const
`(since 6.3)` ushort | toUShort(bool *ok = nullptr, int base = 10) const
`(since 6.3)` QByteArrayView | trimmed() const

Class QCborArray:

`(since 6.3)` QCborArray | fromJsonArray(QJsonArray &&array)

Class QCborMap:

`(since 6.3)` QCborMap | fromJsonObject(QJsonObject &&obj)

Class QCollator:

`(since 6.3)` int | defaultCompare(QStringView s1, QStringView s2)
`(since 6.3)` QCollatorSortKey | defaultSortKey(QStringView key)

Class QCryptographicHash:

`(since 6.3)` QByteArrayView | resultView() const

Class QDebug:

`(since 6.3)` QDebug | operator<<(QDebug debug, const QVarLengthArray<T, P> &array)

Class QDirIterator:

`(since 6.3)` QFileInfo | nextFileInfo()

Class QDoubleValidator:

`(since 6.3)` virtual void | fixup(QString &input) const override

Class QFile:

`(since 6.3)` std::filesystem::path | filesystemSymLinkTarget() const
`(since 6.3)` std::filesystem::path | filesystemSymLinkTarget(const std::filesystem::path &fileName)
`(since 6.3)` bool | open(QIODeviceBase::OpenMode mode, QFileDevice::Permissions permissions)

Class QFontComboBox:

`(since 6.3)` std::optional<QFont> | displayFont(const QString &fontFamily) const
`(since 6.3)` QString | sampleTextForFont(const QString &fontFamily) const
`(since 6.3)` QString | sampleTextForSystem(QFontDatabase::WritingSystem writingSystem) const
`(since 6.3)` void | setDisplayFont(const QString &fontFamily, const QFont &font)
`(since 6.3)` void | setSampleTextForFont(const QString &fontFamily, const QString &sampleText)
`(since 6.3)` void | setSampleTextForSystem(QFontDatabase::WritingSystem writingSystem, const QString &sampleText)

Class QFontMetrics:

`(since 6.3)` QRect | boundingRect(const QString &text, const QTextOption &option) const
`(since 6.3)` int | horizontalAdvance(const QString &text, const QTextOption &option) const
`(since 6.3)` QRect | tightBoundingRect(const QString &text, const QTextOption &option) const

Class QFontMetricsF:

`(since 6.3)` QRectF | boundingRect(const QString &text, const QTextOption &option) const
`(since 6.3)` qreal | horizontalAdvance(const QString &text, const QTextOption &option) const
`(since 6.3)` QRectF | tightBoundingRect(const QString &text, const QTextOption &option) const

Class QInputDevice:

`(since 6.3)` QStringList | seatNames()

Class QLatin1StringView:

`(since 6.3)` qsizetype | lastIndexOf(QChar ch, Qt::CaseSensitivity cs) const

Class QLocalServer:

`(since 6.3)` int | listenBacklogSize() const
`(since 6.3)` void | setListenBacklogSize(int size)

Class QLocale:

`(since 6.3)` QLocale::Language | codeToLanguage(QStringView languageCode, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode)
`(since 6.3)` QString | languageToCode(QLocale::Language language, QLocale::LanguageCodeTypes codeTypes = AnyLanguageCode)

Class QEGLContext:

`(since 6.3)` virtual EGLConfig | config() const = 0
`(since 6.3)` virtual EGLDisplay | display() const = 0

Class QNetworkInformation:

`(since 6.3)` bool | loadDefaultBackend()
`(since 6.3)` QNetworkInformation::Features | supportedFeatures() const

Class QNetworkReply:

`(since 6.3)` void | requestSent()
`(since 6.3)` void | socketStartedConnecting()

Class QObject:

`(since 6.3)` QList<T> | findChildren(Qt::FindChildOptions options = Qt::FindChildrenRecursively) const

Class QOpcUaClient:

`(since 6.3)` QOpcUaHistoryReadResponse * | readHistoryData(const QOpcUaHistoryReadRawRequest &request)

Class QOpcUaLocalizedText:

`(since 6.3)` QDebug | operator<<(QDebug debug, const QOpcUaLocalizedText &text)

Class QOpcUaNode:

`(since 6.3)` QOpcUaHistoryReadResponse * | readHistoryRaw(const QDateTime &startTime, const QDateTime &endTime, quint32 numValues, bool returnBounds)

Class QOpcUaQualifiedName:

`(since 6.3)` QDebug | operator<<(QDebug debug, const QOpcUaQualifiedName &name)

Class QProcessEnvironment:

`(since 6.3)` bool | inheritsFromParent() const

Class QQuickItem:

`(since 6.3)` void | dumpItemTree() const
`(since 6.3)` void | ensurePolished()

Class QQuickRenderTarget:

`(since 6.3)` qreal | devicePixelRatio() const
`(since 6.3)` void | setDevicePixelRatio(qreal ratio)

Class QRegularExpressionMatch:

`(since 6.3)` bool | hasCaptured(QAnyStringView name) const
`(since 6.3)` bool | hasCaptured(int nth) const

Class QSemaphore:

`(since 6.3)` bool | tryAcquire(int n, std::chrono::duration<Rep, Period> timeout)
`(since 6.3)` bool | try_acquire()
`(since 6.3)` bool | try_acquire_for(const std::chrono::duration<Rep, Period> &timeout)
`(since 6.3)` bool | try_acquire_until(const std::chrono::time_point<Clock, Duration> &tp)

Class QString:

`(since 6.3)` qsizetype | lastIndexOf(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Class QStringView:

`(since 6.3)` qsizetype | lastIndexOf(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Class QTableWidgetSelectionRange:

`(since 6.3)` bool | operator!=(const QTableWidgetSelectionRange &lhs, const QTableWidgetSelectionRange &rhs)
`(since 6.3)` bool | operator==(const QTableWidgetSelectionRange &lhs, const QTableWidgetSelectionRange &rhs)

Class QTcpServer:

`(since 6.3)` int | listenBacklogSize() const
`(since 6.3)` void | setListenBacklogSize(int size)

Class QThreadPool:

`(since 6.3)` void | startOnReservedThread(QRunnable *runnable)
`(since 6.3)` void | startOnReservedThread(Callable &&callableToRun)

Class QUrl:

`(since 6.3)` QString | fromAce(const QByteArray &domain, QUrl::AceProcessingOptions options = {})
`(since 6.3)` QByteArray | toAce(const QString &domain, QUrl::AceProcessingOptions options = {})

Class QUtf8StringView:

`(since 6.3)` bool | isValidUtf8() const

Class QVarLengthArray:

`(since 6.3)` QVarLengthArray<T, Prealloc>::iterator | emplace(QVarLengthArray<T, Prealloc>::const_iterator pos, Args &&... args)
`(since 6.3)` T & | emplace_back(Args &&... args)

Class QWidget:

`(since 6.3)` QAction * | addAction(const QString &text)
`(since 6.3)` QAction * | addAction(const QIcon &icon, const QString &text)
`(since 6.3)` QAction * | addAction(const QString &text, const QKeySequence &shortcut)
`(since 6.3)` QAction * | addAction(const QIcon &icon, const QString &text, const QKeySequence &shortcut)
`(since 6.3)` QAction * | addAction(const QString &text, Args &&... args)
`(since 6.3)` QAction * | addAction(const QIcon &icon, const QString &text, Args &&... args)
`(since 6.3)` QAction * | addAction(const QString &text, const QKeySequence &shortcut, Args &&... args)
`(since 6.3)` QAction * | addAction(const QIcon &icon, const QString &text, const QKeySequence &shortcut, Args &&... args)
`(since 6.3)` QAction * | addAction(const QString &text, const QObject *receiver, const char *member, Qt::ConnectionType type = Qt::AutoConnection)
`(since 6.3)` QAction * | addAction(const QIcon &icon, const QString &text, const QObject *receiver, const char *member, Qt::ConnectionType type = Qt::AutoConnection)
`(since 6.3)` QAction * | addAction(const QString &text, const QKeySequence &shortcut, const QObject *receiver, const char *member, Qt::ConnectionType type = Qt::AutoConnection)
`(since 6.3)` QAction * | addAction(const QIcon &icon, const QString &text, const QKeySequence &shortcut, const QObject *receiver, const char *member, Qt::ConnectionType type = Qt::AutoConnection)

### New Functions in Namespaces

`(since 6.3)` void | failOnWarning(const char *message)
`(since 6.3)` void | failOnWarning(const QRegularExpression &messagePattern)
`(since 6.3)` QFuture<OutputSequence> | whenAll(InputIt first, InputIt last)
`(since 6.3)` QFuture<OutputSequence> | whenAll(Futures &&... futures)
`(since 6.3)` QFuture<QtFuture::WhenAnyResult<T>> | whenAny(InputIt first, InputIt last)
`(since 6.3)` QFuture<std::variant<std::decay_t<Futures>...>> | whenAny(Futures &&... futures)

### New Global Functions

`(since 6.3)` const char * | qWebEngineChromiumSecurityPatchVersion()

### New Macros

`(since 6.3)` | QT_TRID_N_NOOP(id)
`(since 6.3)` | QVERIFY_THROWS_EXCEPTION(exceptiontype, ...)
`(since 6.3)` | QVERIFY_THROWS_NO_EXCEPTION(...)
`(since 6.3)` | Q_APPLICATION_STATIC(Type, VariableName, ...)
`(since 6.3)` | Q_GADGET_EXPORT(EXPORT_MACRO)

### New Enum Types

`(since 6.3)` enum class | TransportMedium { Unknown, Ethernet, Cellular, WiFi, Bluetooth }
`(since 6.3)` enum | Initialization { InheritFromParent }
`(since 6.3)` enum | AceProcessingOption { IgnoreIDNWhitelist, AceTransitionalProcessing }

### New Enum Values

enum value | Language::Kaingang
enum value | Language::Nheengatu
enum value | PixelMetric::PM_LineEditIconMargin
enum value | Script::Script_CyproMinoan
enum value | Script::Script_NagMundari
enum value | Script::Script_OldUyghur
enum value | Script::Script_Tangsa
enum value | Script::Script_Toto
enum value | Script::Script_Vithkuqi
enum value | StandardPixmap::SP_TabCloseButton
enum value | StyleHint::SH_SpinBox_SelectOnStep
enum value | UnicodeVersion::Unicode_14_0

### New Properties

`(since 6.3)` barSeriesMargin : QSizeF `(since 6.3)` rowColors : QList<QColor> `(since 6.3)` autoScaleY : bool `(since 6.3)` maxYValue : float | `(since 6.3)` minYValue : float `(since 6.3)` isMetered : bool `(since 6.3)` transportMedium : TransportMedium `(since 6.3)` wireframeColor : QColor

### New Variables

`(since 6.3)` const QOperatingSystemVersion | MacOSMonterey
`(since 6.3)` const QOperatingSystemVersionBase | Windows10_1809
`(since 6.3)` const QOperatingSystemVersionBase | Windows10_1903
`(since 6.3)` const QOperatingSystemVersionBase | Windows10_1909
`(since 6.3)` const QOperatingSystemVersionBase | Windows10_2004
`(since 6.3)` const QOperatingSystemVersionBase | Windows10_20H2
`(since 6.3)` const QOperatingSystemVersionBase | Windows10_21H1
`(since 6.3)` const QOperatingSystemVersionBase | Windows10_21H2
`(since 6.3)` const QOperatingSystemVersionBase | Windows11

### New QML Types

D
  DynamicBurst3D

F
  FolderDialog

M
  MessageDialog

P
  ParticleCustomShape3D
  PresentationTime

Q
  QtShell
  QtShellChrome
  QtShellSurface

T
  TreeView
  TreeViewDelegate

### New QML Properties

QML Type Bar3DSeries:

`(since 6.3)` | rowColors : list<ThemeColor>

QML Type Bars3D:

`(since 6.3)` | barSeriesMargin : size

QML Type FileInstancing:

`(since 6.3)` | instanceCount : int

QML Type HeightMapSurfaceDataProxy:

`(since 6.3)` | autoScaleY : real
`(since 6.3)` | maxYValue : real
`(since 6.3)` | minYValue : real

QML Type HoverHandler:

`(since 6.3)` | blocking : bool

QML Type InstanceList:

`(since 6.3)` | instanceCount : int

QML Type ParticleSystem3DLogging:

`(since 6.3)` | timeDeviation : real

QML Type SpriteParticle3D:

`(since 6.3)` | lights : list<Light>
`(since 6.3)` | offsetX : real
`(since 6.3)` | offsetY : real

QML Type Surface3DSeries:

`(since 6.3)` | wireframeColor : color

QML Type TextMetrics:

`(since 6.3)` | renderType : enumeration

QML Type WheelHandler:

`(since 6.3)` | blocking : bool

### New QML Methods

QML Type AbstractGraph3D:

`(since 6.3)` bool | hasSeries(Abstract3DSeries series)

QML Type Instancing:

`(since 6.3)` color | instanceColor(int index)
`(since 6.3)` vector3d | instanceCustomData(int index)
`(since 6.3)` vector3d | instancePosition(int index)
`(since 6.3)` quaternion | instanceRotation(int index)
`(since 6.3)` vector3d | instanceScale(int index)

QML Type Item:

`(since 6.3)` void | dumpItemTree()

QML Type TestCase:

`(since 6.3)` | failOnWarning(message)