New Classes and Functions in Qt 6.4 | Qt 6.4

- Qt 6.4
- What's new in Qt 6
- New Classes and Functions in Qt 6.4
- Qt 6.4.0 Reference Documentation

# New Classes and Functions in Qt 6.4

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

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

### New Classes

A
  QAbstractHttpServer

H
  QHttpServer
  QHttpServerRequest
  QHttpServerResponder
  QHttpServerResponse
  QHttpServerRouter
  QHttpServerRouterRule

P
  QPdfLink
  QPdfPageNavigator

S
  QSslServer

W
  QWebEngineFileSystemAccessRequest
  QWebSocketHandshakeOptions

### New Member Functions

Class QAbstractItemModelTester:

void | setUseFetchMore(bool value)

Class QByteArray:

QByteArray | percentDecoded(char percent) const
void | resize(qsizetype newSize, char c)

Class QColor:

QColor | fromString(QAnyStringView name)
bool | isValidColorName(QAnyStringView name)

Class QColorTransform:

bool | isIdentity() const
QRgbaFloat16 | map(QRgbaFloat16 rgbafp16) const
QRgbaFloat32 | map(QRgbaFloat32 rgbafp32) const
bool | operator!=(const QColorTransform &ct1, const QColorTransform &ct2)
bool | operator==(const QColorTransform &ct1, const QColorTransform &ct2)

Class QDate:

QDate | addDuration(int ndays) const
QDate | fromStdSysDays(const int &days)

Class QDateTime:

QDateTime | addDuration(std::chrono::milliseconds msecs) const
QDateTime | fromStdLocalTime(const int &time)
QDateTime | fromStdTimePoint(const std::chrono::time_point<Clock, Duration> &time)
QDateTime | fromStdTimePoint(const int &time)
QDateTime | fromStdZonedTime(const int &time)
QDateTime | operator+(const QDateTime &dateTime, std::chrono::milliseconds duration)
QDateTime | operator+(std::chrono::milliseconds duration, const QDateTime &dateTime)
QDateTime & | operator+=(std::chrono::milliseconds duration)
std::chrono::milliseconds | operator-(const QDateTime &lhs, const QDateTime &rhs)
QDateTime | operator-(const QDateTime &dateTime, std::chrono::milliseconds duration)
QDateTime & | operator-=(std::chrono::milliseconds duration)
int | toStdSysMilliseconds() const
int | toStdSysSeconds() const

Class QFileInfo:

bool | isAlias() const

Class QFormLayout:

bool | isRowVisible(int row) const
bool | isRowVisible(QWidget *widget) const
bool | isRowVisible(QLayout *layout) const
void | setRowVisible(int row, bool on)
void | setRowVisible(QWidget *widget, bool on)
void | setRowVisible(QLayout *layout, bool on)

Class QFuture:

QFuture<U> | unwrap()

Class QHash:

auto | asKeyValueRange() &
auto | asKeyValueRange() const &
auto | asKeyValueRange() &&
auto | asKeyValueRange() const &&

Class QImage:

QImage | colorTransformed(const QColorTransform &transform) const &
QImage | colorTransformed(const QColorTransform &transform) &&

Class QJniEnvironment:

jfieldID | findField(jclass clazz, const char *fieldName)
jmethodID | findMethod(jclass clazz, const char *methodName)
jfieldID | findStaticField(jclass clazz, const char *fieldName)
jmethodID | findStaticMethod(jclass clazz, const char *methodName)

Class QJniObject:

auto | callMethod(const char *methodName, const char *signature, Args &&... args) const
auto | callMethod(const char *methodName, Args &&... args) const
QJniObject | callObjectMethod(const char *methodName, Args &&... args) const
auto | callStaticMethod(const char *className, const char *methodName, const char *signature, Args &&... args)
auto | callStaticMethod(jclass clazz, jmethodID methodId, Args &&... args)
auto | callStaticMethod(const char *className, const char *methodName, Args &&... args)
auto | callStaticMethod(jclass clazz, const char *methodName, Args &&... args)
QJniObject | callStaticObjectMethod(const char *className, const char *methodName, Args &&... args)
QJniObject | callStaticObjectMethod(jclass clazz, const char *methodName, Args &&... args)
QJniObject | construct(Args &&... args)

Class QLatin1Char:

QLatin1Char | operator""_L1(char ch)

Class QLatin1StringView:

const char * | constBegin() const
const char * | constData() const
const char * | constEnd() const
qsizetype | count(QStringView str, Qt::CaseSensitivity cs) const
qsizetype | count(QLatin1StringView l1, Qt::CaseSensitivity cs) const
qsizetype | count(QChar ch, Qt::CaseSensitivity cs) const
bool | empty() const
QLatin1Char | first() const
QLatin1Char | last() const
qsizetype | length() const
QLatin1StringView | operator""_L1(const char *str, size_t size)
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
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

Class QLine:

QLineF | toLineF() const

Class QListWidgetItem:

void | setTextAlignment(Qt::Alignment alignment)

Class QMap:

auto | asKeyValueRange() &
auto | asKeyValueRange() const &
auto | asKeyValueRange() &&
auto | asKeyValueRange() const &&

Class QMargins:

QMarginsF | toMarginsF() const

Class QMetaType:

size_t | qHash(QMetaType type, size_t seed)

Class QMqttSubscriptionProperties:

bool | noLocal() const
void | setNoLocal(bool noloc)

Class QMultiHash:

auto | asKeyValueRange() &
auto | asKeyValueRange() const &
auto | asKeyValueRange() &&
auto | asKeyValueRange() const &&

Class QMultiMap:

auto | asKeyValueRange() &
auto | asKeyValueRange() const &
auto | asKeyValueRange() &&
auto | asKeyValueRange() const &&

Class QMutexLocker:

bool | isLocked() const
QMutexLocker<Mutex> & | operator=(QMutexLocker<Mutex> &&other)
void | swap(QMutexLocker<Mutex> &other)

Class QNetworkInformation:

bool | loadBackendByFeatures(QNetworkInformation::Features features)
bool | loadBackendByName(QStringView backend)

Class QObject:

bool | isQuickItemType() const
void | setObjectName(QAnyStringView name)

Class QPoint:

QPointF | toPointF() const

Class QPolygon:

QPolygonF | toPolygonF() const

Class QQmlApplicationEngine:

void | objectCreationFailed(const QUrl &url)

Class QQuickRenderTarget:

QQuickRenderTarget | fromD3D11Texture(void *texture, uint format, const QSize &pixelSize, int sampleCount)
QQuickRenderTarget | fromMetalTexture(MTLTexture *texture, uint format, const QSize &pixelSize, int sampleCount)
QQuickRenderTarget | fromOpenGLTexture(uint textureId, uint format, const QSize &pixelSize, int sampleCount)
QQuickRenderTarget | fromPaintDevice(QPaintDevice *device)
QQuickRenderTarget | fromVulkanImage(VkImage image, VkImageLayout layout, VkFormat format, const QSize &pixelSize, int sampleCount)
bool | mirrorVertically() const
void | setMirrorVertically(bool enable)

Class QRect:

QRectF | toRectF() const

Class QSGMaterialShader:

int | combinedImageSamplerCount(int binding) const

Class QSize:

QSizeF | toSizeF() const

Class QStringView:

qsizetype | count(QLatin1StringView l1, Qt::CaseSensitivity cs) const
int | localeAwareCompare(QStringView other) const

Class QTableWidgetItem:

void | setTextAlignment(Qt::Alignment alignment)

Class QTcpServer:

void | pendingConnectionAvailable()

Class QTemporaryDir:

QTemporaryDir & | operator=(QTemporaryDir &&other)
void | swap(QTemporaryDir &other)

Class QTextCursor:

void | insertMarkdown(const QString &markdown, QTextDocument::MarkdownFeatures features)

Class QTextDocumentFragment:

QTextDocumentFragment | fromMarkdown(const QString &markdown, QTextDocument::MarkdownFeatures features)
QString | toMarkdown(QTextDocument::MarkdownFeatures features) const
QString | toRawText() const

Class QTextStream:

QTextStream & | operator>>(char16_t &c)

Class QTextToSpeech:

bool | setEngine(const QString &engine, const QVariantMap &params)

Class QTimeZone:

QTimeZone | fromStdTimeZonePtr(const int *timeZone)

Class QTreeWidgetItem:

void | setTextAlignment(int column, Qt::Alignment alignment)

Class QVarLengthArray:

void | resize(qsizetype size, const T &v)

Class QVersionNumber:

QVersionNumber | fromString(QAnyStringView string, qsizetype *suffixIndex)

Class QVoice:

QDataStream & | operator<<(QDataStream &stream, const QVoice &voice)
QDebug | operator<<(QDebug debug, const QVoice &voice)
QDataStream & | operator>>(QDataStream &stream, QVoice &voice)
void | swap(QVoice &other)

Class QVulkanWindow:

void | setEnabledFeaturesModifier(const QVulkanWindow::EnabledFeaturesModifier &modifier)

Class QWebSocket:

QWebSocketHandshakeOptions | handshakeOptions() const
void | open(const QUrl &url, const QWebSocketHandshakeOptions &options)
void | open(const QNetworkRequest &request, const QWebSocketHandshakeOptions &options)
QString | subprotocol() const

Class QWebSocketServer:

void | setSupportedSubprotocols(const QStringList &protocols)
QStringList | supportedSubprotocols() const

### New Functions in Namespaces

QByteArray | operator""_ba(const char *str, size_t size)
QString | operator""_s(const char16_t *str, size_t size)
bool | qIsPolishScheduled(const QQuickWindow *window)
bool | qWaitForPolish(const QQuickWindow *window, int timeout)
bool | qWaitForPolish(const QQuickItem *item, int timeout)

### New Macros

| QCOMPARE_EQ(left, right)
| QCOMPARE_GE(left, right)
| QCOMPARE_GT(left, right)
| QCOMPARE_LE(left, right)
| QCOMPARE_LT(left, right)
| QCOMPARE_NE(left, right)
| QTRY_COMPARE_EQ(left, right)
| QTRY_COMPARE_EQ_WITH_TIMEOUT(left, right, timeout)
| QTRY_COMPARE_GE(left, right)
| QTRY_COMPARE_GE_WITH_TIMEOUT(left, right, timeout)
| QTRY_COMPARE_GT(left, right)
| QTRY_COMPARE_GT_WITH_TIMEOUT(left, right, timeout)
| QTRY_COMPARE_LE(left, right)
| QTRY_COMPARE_LE_WITH_TIMEOUT(left, right, timeout)
| QTRY_COMPARE_LT(left, right)
| QTRY_COMPARE_LT_WITH_TIMEOUT(left, right, timeout)
| QTRY_COMPARE_NE(left, right)
| QTRY_COMPARE_NE_WITH_TIMEOUT(left, right, timeout)
| Q_CONSTINIT

### New Enum Types

enum | PolygonMode { Fill, Line }

### New Properties

- clearButtonEnabled : const
- layoutEnabled : const
- engine : const

- locale : const
- isOpaque : const

### New Variables

| Windows11_21H2
| Windows11_22H2

### New QML Types

B
  BakedLightmap
  BoxShape

C
  CapsuleShape
  CharacterController
  CollisionNode
  CollisionShape
  ColorDialog
  ConvexMeshShape

D
  DynamicRigidBody
  DynamicsWorld

F
  FrameAnimation

H
  HeightFieldGeometry
  HeightFieldShape

I
  InstanceModel
  InstanceRepeater

L
  Lightmapper
  LineParticle3D
  LookAtNode

P
  PdfBookmarkModel
  PdfPageImage
  PhysicsBody
  PhysicsMaterial
  PlaneShape

R
  Repeller3D

S
  ScaleAffector3D
  SphereShape
  StaticRigidBody
  SystemInformation

T
  TriangleMeshShape
  TriggerBody

### New QML Properties

QML Type Model:

| castsReflections : bool

QML Type ReflectionProbe:

| debugView : bool

QML Type SceneEnvironment:

| skyBoxCubeMap : QtQuick3D::CubeMapTexture
| skyboxBlurAmount : float
| specularAAEnabled : bool

QML Type SpriteParticle3D:

| castsReflections : bool

QML Type TableView:

| animate : bool
| keyNavigationEnabled : bool
| pointerNavigationEnabled : bool
| selectionBehavior : enumeration

QML Type View3D:

| renderFormat : enumeration

QML Type WaylandSurface:

| isOpaque : bool

QML Type WebSocket:

| negotiatedSubprotocol : QString
| requestedSubprotocols : QStringList

QML Type WebSocketServer:

| supportedSubprotocols : QStringList

### New QML Methods

QML Type TableView:

point | cellAtIndex(QModelIndex modelIndex)
int | columnAtIndex(QModelIndex modelIndex)
QModelIndex | modelIndex(int column, int row)
QModelIndex | modelIndex(point cell)
int | rowAtIndex(QModelIndex modelIndex)

QML Type TreeView:

| collapseRecursively(row)
| expandRecursively(row, depth)
| expandToIndex(QModelIndex index)