New Classes and Functions in Qt 5.3

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

New Namespaces

namespace QWebSocketProtocol
namespace QtAndroid

New Classes

New Member Functions

Class QMessageLogger:

void critical(const QLoggingCategory &cat, const char *msg, ...) const
void critical(CategoryFunction catFunc, const char *msg, ...) const
QDebug critical(const QLoggingCategory &cat) const
QDebug critical(CategoryFunction catFunc) const
void debug(const QLoggingCategory &cat, const char *msg, ...) const
void debug(CategoryFunction catFunc, const char *msg, ...) const
QDebug debug(const QLoggingCategory &cat) const
QDebug debug(CategoryFunction catFunc) const
void warning(const QLoggingCategory &cat, const char *msg, ...) const
void warning(CategoryFunction catFunc, const char *msg, ...) const
QDebug warning(CategoryFunction catFunc) const

Class QProcess:

qint64 processId() const

Class QJsonArray:

QJsonArray operator+(const QJsonValue &value) const
QJsonArray &operator+=(const QJsonValue &value)
QJsonArray &operator<<(const QJsonValue &value)

Class QCoreApplication:

bool isSetuidAllowed()
void setSetuidAllowed(bool allow)

Class QAtomicInteger:

T fetchAndAndAcquire(T valueToAnd)
T fetchAndAndOrdered(T valueToAnd)
T fetchAndAndRelaxed(T valueToAnd)
T fetchAndAndRelease(T valueToAnd)
T fetchAndOrAcquire(T valueToOr)
T fetchAndOrOrdered(T valueToOr)
T fetchAndOrRelaxed(T valueToOr)
T fetchAndOrRelease(T valueToOr)
T fetchAndSubAcquire(T valueToSub)
T fetchAndSubOrdered(T valueToSub)
T fetchAndSubRelaxed(T valueToSub)
T fetchAndSubRelease(T valueToSub)
T fetchAndXorAcquire(T valueToXor)
T fetchAndXorOrdered(T valueToXor)
T fetchAndXorRelaxed(T valueToXor)
T fetchAndXorRelease(T valueToXor)
operator T() const
T operator&=(T valueToAnd)
T operator++()
T operator++(int)
T operator+=(T valueToAdd)
T operator--()
T operator--(int)
T operator-=(T valueToSub)
QAtomicInteger &operator=(T newValue)
T operator^=(T valueToXor)
T operator|=(T valueToOr)

Class QByteArray:

QByteArray fromCFData(CFDataRef data)
QByteArray fromNSData(const NSData *data)
QByteArray fromRawCFData(CFDataRef data)
QByteArray fromRawNSData(const NSData *data)
CFDataRef toCFData() const
NSData *toNSData() const
CFDataRef toRawCFData() const
NSData *toRawNSData() const

Class QChar:

JoiningType joiningType() const
JoiningType joiningType(uint ucs4)

Class QRectF:

QRectF marginsAdded(const QMarginsF &margins) const
QRectF marginsRemoved(const QMarginsF &margins) const
QRectF &operator+=(const QMarginsF &margins)
QRectF &operator-=(const QMarginsF &margins)

Class QSharedPointer:

void swap(QSharedPointer<T> &other)

Class QString:

bool contains(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QString fromUcs4(const char32_t *str, int size = -1)
QString fromUtf16(const char16_t *str, int size = -1)

Class QVarLengthArray:

bool contains(const T &value) const
int indexOf(const T &value, int from = 0) const
int lastIndexOf(const T &value, int from = -1) const

Class QDBusServer:


Class QPixmap:

QPixmap fromImage(QImage &&image, Qt::ImageConversionFlags flags = Qt::AutoColor)

Class QOpenGLContext:

bool isOpenGLES() const
void *openGLModuleHandle()
OpenGLModuleType openGLModuleType()

Class QMouseEvent:

Qt::MouseEventFlags flags() const
Qt::MouseEventSource source() const

Class QPlatformIntegration:

virtual QOpenGLContext::OpenGLModuleType openGLModuleType()

Class QPlatformTheme:

virtual QString standardButtonText(int button) const

Class QPlatformSystemTrayIcon:

virtual QPlatformMenu *createMenu() const

Class QPlatformWindow:

virtual QRect normalGeometry() const

Class QSurfaceFormat:

QSurfaceFormat::FormatOptions options() const
void setOption(FormatOption option, bool on = true)
void setOptions(QSurfaceFormat::FormatOptions options)
void setSwapInterval(int interval)
int swapInterval() const
bool testOption(FormatOption option) const

Class QSurface:

bool supportsOpenGL() const

Class QOpenGLFunctions:

void glBindTexture(GLenum target, GLuint texture)
void glBlendFunc(GLenum sfactor, GLenum dfactor)
void glClear(GLbitfield mask)
void glClearColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
void glClearStencil(GLint s)
void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
void glCullFace(GLenum mode)
void glDeleteTextures(GLsizei n, const GLuint *textures)
void glDepthFunc(GLenum func)
void glDepthMask(GLboolean flag)
void glDisable(GLenum cap)
void glDrawArrays(GLenum mode, GLint first, GLsizei count)
void glDrawElements(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices)
void glEnable(GLenum cap)
void glFinish()
void glFlush()
void glFrontFace(GLenum mode)
void glGenTextures(GLsizei n, GLuint *textures)
void glGetBooleanv(GLenum pname, GLboolean *params)
GLenum glGetError()
void glGetFloatv(GLenum pname, GLfloat *params)
void glGetIntegerv(GLenum pname, GLint *params)
const GLubyte *glGetString(GLenum name)
void glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
void glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
void glHint(GLenum target, GLenum mode)
GLboolean glIsEnabled(GLenum cap)
GLboolean glIsTexture(GLuint texture)
void glLineWidth(GLfloat width)
void glPixelStorei(GLenum pname, GLint param)
void glPolygonOffset(GLfloat factor, GLfloat units)
void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels)
void glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
void glStencilFunc(GLenum func, GLint ref, GLuint mask)
void glStencilMask(GLuint mask)
void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels)
void glTexParameterf(GLenum target, GLenum pname, GLfloat param)
void glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
void glTexParameteri(GLenum target, GLenum pname, GLint param)
void glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels)
void glViewport(GLint x, GLint y, GLsizei width, GLsizei height)

Class QOpenGLFramebufferObject:

GLuint takeTexture()

Class QOpenGLTexture:

void setCompressedData(int mipLevel, int layer, CubeMapFace cubeFace, int dataSize, const void *data, const QOpenGLPixelTransferOptions * const options = Q_NULLPTR)
void setData(int mipLevel, int layer, CubeMapFace cubeFace, PixelFormat sourceFormat, PixelType sourceType, const void *data, const QOpenGLPixelTransferOptions * const options = Q_NULLPTR)
void setData(int mipLevel, int layer, PixelFormat sourceFormat, PixelType sourceType, const void *data, const QOpenGLPixelTransferOptions * const options = Q_NULLPTR)
void setData(int mipLevel, PixelFormat sourceFormat, PixelType sourceType, const void *data, const QOpenGLPixelTransferOptions * const options = Q_NULLPTR)
void setData(PixelFormat sourceFormat, PixelType sourceType, const void *data, const QOpenGLPixelTransferOptions * const options = Q_NULLPTR)

Class QOpenGLShaderProgram:

bool create()

Class QPagedPaintDevice:

QPageLayout pageLayout() const
bool setPageLayout(const QPageLayout &newPageLayout)
bool setPageMargins(const QMarginsF &margins)
bool setPageMargins(const QMarginsF &margins, QPageLayout::Unit units)
bool setPageOrientation(QPageLayout::Orientation orientation)
bool setPageSize(const QPageSize &pageSize)

Class QPdfWriter:

QPageLayout pageLayout() const
int resolution() const
bool setPageLayout(const QPageLayout &newPageLayout)
bool setPageMargins(const QMarginsF &margins)
bool setPageMargins(const QMarginsF &margins, QPageLayout::Unit units)
bool setPageOrientation(QPageLayout::Orientation orientation)
bool setPageSize(const QPageSize &pageSize)
void setResolution(int resolution)

Class QTextFormat:

bool isEmpty() const

Class QTextCharFormat:

void setFont(const QFont &font, FontPropertiesInheritanceBehavior behavior)

Class QTextBlock:

QVector<QTextLayout::FormatRange> textFormats() const

Class QSslConfiguration:

QList<QByteArray> allowedNextProtocols() const
QByteArray nextNegotiatedProtocol() const
NextProtocolNegotiationStatus nextProtocolNegotiationStatus() const
void setAllowedNextProtocols(QList<QByteArray> protocols)

Class QPrinter:

QPageLayout pageLayout() const
bool setPageLayout(const QPageLayout &newLayout)
bool setPageMargins(const QMarginsF &margins, QPageLayout::Unit units)
bool setPageOrientation(QPageLayout::Orientation orientation)
bool setPageSize(const QPageSize &pageSize)

Class QPrinterInfo:

QStringList availablePrinterNames()
QPageSize defaultPageSize() const
QString defaultPrinterName()
bool isRemote() const
QPageSize maximumPhysicalPageSize() const
QPageSize minimumPhysicalPageSize() const
QPrinter::PrinterState state() const
QList<QPageSize> supportedPageSizes() const
QList<int> supportedResolutions() const
bool supportsCustomPageSizes() const

Class QPlainTextEdit:

bool find(const QRegExp &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())

Class QTextEdit:

bool find(const QRegExp &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())

Class QBluetoothLocalDevice:

QList<QBluetoothAddress> connectedDevices() const
void deviceConnected(const QBluetoothAddress &address)
void deviceDisconnected(const QBluetoothAddress &address)

Class QQuickWindow:

void afterAnimating()
void afterSynchronizing()
void openglContextCreated(QOpenGLContext *context)
void sceneGraphAboutToStop()
void sceneGraphError(QQuickWindow::SceneGraphError error, const QString &message)

Class QNmeaPositionInfoSource:

void setUserEquivalentRangeError(double uere)
double userEquivalentRangeError() const

Class QMediaServiceProvider:

virtual int cameraOrientation(const QByteArray &device) const
virtual QCamera::Position cameraPosition(const QByteArray &device) const
virtual QByteArray defaultDevice(const QByteArray &serviceType) const

Class QMediaServiceProviderHint:

QCamera::Position cameraPosition() const

Class QSerialPortInfo:

QString serialNumber() const

New Functions in Namespaces

QAndroidJniObject androidActivity()
int androidSdkVersion()
void ignoreMessage(QtMsgType type, const QRegularExpression &messagePattern)
void startActivity(const QAndroidJniObject &intent, int receiverRequestCode, QAndroidActivityResultReceiver *resultReceiver = nullptr)
void startIntentSender(const QAndroidJniObject &intentSender, int receiverRequestCode, QAndroidActivityResultReceiver *resultReceiver = nullptr)

New Global Functions

QRectF operator+(const QMarginsF &lhs, const QRectF &rhs)
QRectF operator+(const QRectF &lhs, const QMarginsF &rhs)
QMargins operator+(const QMargins &margins)
QMargins operator+(int lhs, const QMargins &rhs)
QMargins operator+(const QMargins &lhs, int rhs)
QRectF operator-(const QRectF &lhs, const QMarginsF &rhs)
QRect operator-(const QRect &lhs, const QMargins &rhs)
QMargins operator-(const QMargins &lhs, int rhs)
uint qHash(const QFont &font, uint seed = 0)
uint qHash(double key, uint seed = 0)
uint qHash(float key, uint seed = 0)
QRgb qPremultiply(QRgb rgb)
void qRemovePostRoutine(QtCleanUpFunction ptr)
QRgb qUnpremultiply(QRgb rgb)

New Macros

QVERIFY_EXCEPTION_THROWN(expression, exceptiontype)
qCCritical(category, const char *message, ...)
qCDebug(category, const char *message, ...)
qCWarning(category, const char *message, ...)

New Enum Types

enum Position { UnspecifiedPosition, BackFace, FrontFace }
enum OpenGLModuleType { LibGL, LibGLES }
enum SceneGraphError { ContextNotAvailable }
enum FontPropertiesInheritanceBehavior { FontPropertiesSpecifiedOnly, FontPropertiesAll }
enum MouseEventFlag { MouseEventCreatedDoubleClick }
enum MouseEventSource { MouseEventNotSynthesized, MouseEventSynthesizedBySystem, MouseEventSynthesizedByQt, MouseEventSynthesizedByApplication }

New Typedefs

New Properties

New QML Types

New QML Properties

New QML Methods

linkAt(real x, real y)
linkAt(real x, real y)

Additions to Other Qt 5 Releases

© 2017 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.