New Classes and Functions in Qt 5.8

This page contains a comprehensive list of all new classes and functions introduced in Qt 5.8. Links to new APIs in previous Qt 5 releases are found at the bottom of this page.

New Namespaces

New Classes

New Member Functions

Class QStringRef:

void chop(int n)
int compare(const QByteArray &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Class QRect:

CGRect toCGRect() const

Class QWebSocketServer:

void preSharedKeyAuthenticationRequired(QSslPreSharedKeyAuthenticator *authenticator)

Class QWebSocket:

void preSharedKeyAuthenticationRequired(QSslPreSharedKeyAuthenticator *authenticator)

Class QTimer:

std::chrono::milliseconds intervalAsDuration() const
std::chrono::milliseconds remainingTimeAsDuration() const
void singleShot(std::chrono::milliseconds msec, const QObject *receiver, const char *member)
void singleShot(std::chrono::milliseconds msec, Qt::TimerType timerType, const QObject *receiver, const char *member)
void start(std::chrono::milliseconds msec)

Class QPoint:

CGPoint toCGPoint() const

Class QMetaEnum:

bool isScoped() const

Class QQuickStyle:

void setFallbackStyle(const QString &style)

Class QStringList:

QString join(QLatin1String separator) const

Class QLineF:

QPointF center() const

Class QCommandLineOption:

Flags flags() const
void setFlags(Flags flags)

Class QMutex:

bool try_lock()
bool try_lock_for(std::chrono::duration<Rep, Period> duration)
bool try_lock_until(std::chrono::time_point<Clock, Duration> timePoint)

Class QBluetoothDeviceDiscoveryAgent:

int lowEnergyDiscoveryTimeout() const
void setLowEnergyDiscoveryTimeout(int timeout)
void start(DiscoveryMethods methods)
DiscoveryMethods supportedDiscoveryMethods()

Class QQmlEngine:

void exit(int retCode)

Class QRectF:

QRectF fromCGRect(CGRect rect)
CGRect toCGRect() const

Class QJSValue:

bool isQMetaObject() const
const QMetaObject *toQMetaObject() const

Class QFormLayout:

void removeRow(int row)
void removeRow(QWidget *widget)
void removeRow(QLayout *layout)
TakeRowResult takeRow(int row)
TakeRowResult takeRow(QWidget *widget)
TakeRowResult takeRow(QLayout *layout)

Class QSerialPort:

void errorOccurred(QSerialPort::SerialPortError error)

Class QNetworkAccessManager:

QNetworkReply *sendCustomRequest(const QNetworkRequest &request, const QByteArray &verb, const QByteArray &data)
QNetworkReply *sendCustomRequest(const QNetworkRequest &request, const QByteArray &verb, QHttpMultiPart *multiPart)

Class QWaitCondition:

void notify_all()
void notify_one()

Class QNetworkProxyFactory:


Class QSize:

CGSize toCGSize() const

Class QUndoStack:

void resetClean()

Class QHostAddress:

bool isEqual(const QHostAddress &other, ConversionMode mode = TolerantConversion) const
QHostAddress &operator=(SpecialAddress address)
void setAddress(SpecialAddress address)

Class QSizeF:

QSizeF fromCGSize(CGSize size)
CGSize toCGSize() const

Class QLibraryInfo:

QVersionNumber version()

Class QQuickWindow:

QSGImageNode *createImageNode() const
QSGNinePatchNode *createNinePatchNode() const
QSGRectangleNode *createRectangleNode() const
QSGRendererInterface *rendererInterface() const
void setSceneGraphBackend(QSGRendererInterface::GraphicsApi api)
void setSceneGraphBackend(const QString &backend)

Class QMainWindow:

void tabifiedDockWidgetActivated(QDockWidget *dockWidget)

Class QPointF:

QPointF fromCGPoint(CGPoint point)
CGPoint toCGPoint() const

Class QJSEngine:

QJSValue newQMetaObject(const QMetaObject *metaObject)
QJSValue newQMetaObject()

Class QLowEnergyController:

QBluetoothUuid remoteDeviceUuid() const

Class QSGEngine:

QSGImageNode *createImageNode() const
QSGNinePatchNode *createNinePatchNode() const
QSGRectangleNode *createRectangleNode() const
QSGRendererInterface *rendererInterface() const

Class QLatin1String:

QLatin1Char at(int pos) const
QLatin1String left(int length) const
QLatin1String mid(int start) const
QLatin1String mid(int start, int length) const
QLatin1Char operator[](int pos) const
QLatin1String right(int length) const

Class QLine:

QPoint center() const

Class QDateTime:

qint64 currentSecsSinceEpoch()
QDateTime fromSecsSinceEpoch(qint64 secs, Qt::TimeSpec spec = Qt::LocalTime, int offsetSeconds = 0)
QDateTime fromSecsSinceEpoch(qint64 secs, const QTimeZone &timeZone)
void setSecsSinceEpoch(qint64 secs)
qint64 toSecsSinceEpoch() const

Class QSslConfiguration:

QSslDiffieHellmanParameters diffieHellmanParameters() const
QByteArray preSharedKeyIdentityHint() const
void setDiffieHellmanParameters(const QSslDiffieHellmanParameters &dhparams)
void setPreSharedKeyIdentityHint(const QByteArray &hint)

New Functions in Namespaces

qreal convertVolume(qreal volume, VolumeScale from, VolumeScale to)
QTouchDevice *createTouchDevice(QTouchDevice::DeviceType devType = QTouchDevice::TouchScreen)
char *toString(std::nullptr_t)

New Global Functions

bool operator!=(std::nullptr_t, const QWeakPointer<T> &rhs)
bool operator!=(const QWeakPointer<T> &lhs, std::nullptr_t)
bool operator!=(std::nullptr_t, const QSharedPointer<T> &rhs)
bool operator!=(const QSharedPointer<T> &lhs, std::nullptr_t)
bool operator!=(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs)
bool operator!=(const QScopedPointer<T, Cleanup> &lhs, std::nullptr_t)
QDebug operator<<(QDebug debug, const QSslDiffieHellmanParameters &dhparam)
bool operator==(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs)
bool operator==(std::nullptr_t, const QWeakPointer<T> &rhs)
bool operator==(const QWeakPointer<T> &lhs, std::nullptr_t)
bool operator==(std::nullptr_t, const QSharedPointer<T> &rhs)
bool operator==(const QSharedPointer<T> &lhs, std::nullptr_t)
bool operator==(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs)
bool operator==(const QScopedPointer<T, Cleanup> &lhs, std::nullptr_t)
uint qHash(const QSslDiffieHellmanParameters &dhparam, uint seed = 0)
uint qHash(const QMultiHash<Key, T> &key, uint seed = 0)
uint qHash(const QHash<Key, T> &key, uint seed = 0)
int qmlRegisterUncreatableMetaObject(const QMetaObject &staticMetaObject, const char *uri, int versionMajor, int versionMinor, const char *qmlName, const QString &reason)

New Macros

New Enum Types

enum VolumeScale { LinearVolumeScale, CubicVolumeScale, LogarithmicVolumeScale, DecibelVolumeScale }
enum DiscoveryMethod { NoMethod, ClassicMethod, LowEnergyMethod }
enum ConversionModeFlag { StrictConversion, ConvertV4MappedToIPv4, ConvertV4CompatToIPv4, ConvertLocalHost, ConvertUnspecifiedAddress, TolerantConversion }
enum LegendMarkerType { LegendMarkerTypeArea, LegendMarkerTypeBar, LegendMarkerTypePie, LegendMarkerTypeXY, LegendMarkerTypeBoxPlot, LegendMarkerTypeCandlestick }

New Typedefs

typedef QModbusDataUnitMap
typedef ContainerId
typedef EvaluatorId
typedef InstructionId
typedef StringId

New QML Types

New QML Properties

New QML Signals

binaryMessageReceived(QString message)

New QML Methods

callLater(function, argument1, argument2, ...)
callLater(function)
real convertVolume(real volume, VolumeScale from, VolumeScale to)
tryVerify(function, timeout = 5000, message = "")
void sendBinaryMessage(ArrayBuffer message)

Additions to Other Qt 5 Releases