- Qt 5.15
- New Classes and Functions in Qt 5.1
- Qt 5.15.15 Reference Documentation

# New Classes and Functions in Qt 5.1

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

- New Classes
- New Member Functions
- New Global Functions
- New Macros
- New Enum Types
- New Type Aliases
- New Properties
- New QML Types
- New QML Properties
- New QML Signals
- New QML Methods

### New Classes

A
  QAbstractOpenGLFunctions
  QAccelerometer
  QAccelerometerFilter
  QAccelerometerReading
  QAltimeter
  QAltimeterFilter
  QAltimeterReading
  QAmbientLightFilter
  QAmbientLightReading
  QAmbientLightSensor
  QAmbientTemperatureFilter
  QAmbientTemperatureReading
  QAmbientTemperatureSensor

B
  Binder (QOpenGLVertexArrayObject)

C
  QCompass
  QCompassFilter
  QCompassReading

D
  QDBusVirtualObject
  QDebugStateSaver

G
  QGlobalStatic
  QGyroscope
  QGyroscopeFilter
  QGyroscopeReading

H
  QHolsterFilter
  QHolsterReading
  QHolsterSensor

I
  QIRProximityFilter
  QIRProximityReading
  QIRProximitySensor

L
  QLightFilter
  QLightReading
  QLightSensor
  QLockFile

M
  QMagnetometer
  QMagnetometerFilter
  QMagnetometerReading
  QMessageAuthenticationCode

O
  QOffscreenSurface
  QOpenGLDebugLogger
  QOpenGLDebugMessage
  QOpenGLFunctions_1_0
  QOpenGLFunctions_1_1
  QOpenGLFunctions_1_2
  QOpenGLFunctions_1_3
  QOpenGLFunctions_1_4
  QOpenGLFunctions_1_5
  QOpenGLFunctions_2_0
  QOpenGLFunctions_2_1
  QOpenGLFunctions_3_0
  QOpenGLFunctions_3_1
  QOpenGLFunctions_3_2_Compatibility
  QOpenGLFunctions_3_2_Core
  QOpenGLFunctions_3_3_Compatibility
  QOpenGLFunctions_3_3_Core
  QOpenGLFunctions_4_0_Compatibility
  QOpenGLFunctions_4_0_Core
  QOpenGLFunctions_4_1_Compatibility
  QOpenGLFunctions_4_1_Core
  QOpenGLFunctions_4_2_Compatibility
  QOpenGLFunctions_4_2_Core
  QOpenGLFunctions_4_3_Compatibility
  QOpenGLFunctions_4_3_Core
  QOpenGLFunctions_ES2
  QOpenGLTimeMonitor
  QOpenGLTimerQuery
  QOpenGLVersionProfile
  QOpenGLVertexArrayObject
  QOrientationFilter
  QOrientationReading
  QOrientationSensor
  qoutputrange

P
  QPressureFilter
  QPressureReading
  QPressureSensor
  QProximityFilter
  QProximityReading
  QProximitySensor

Q
  QQmlApplicationEngine
  QQuickTextDocument

R
  QRegularExpressionValidator
  QRotationFilter
  QRotationReading
  QRotationSensor

S
  QSaveFile
  QSensor
  QSensorBackend
  QSensorChangesInterface
  QSensorGesture
  QSensorGestureManager
  QSensorGesturePluginInterface
  QSensorGestureRecognizer
  QSensorPluginInterface
  QSerialPort
  QSerialPortInfo

T
  QTapFilter
  QTapReading
  QTapSensor
  QTiltFilter
  QTiltReading
  QTiltSensor

### New Member Functions

Class QQuickItem:

void | forceActiveFocus(Qt::FocusReason reason)

Class QQuickWindow:

void | closing(QQuickCloseEvent *close)
bool | hasDefaultAlphaBuffer()
void | setDefaultAlphaBuffer(bool useAlpha)

Class QAccelerometer:

void | accelerationModeChanged(AccelerationMode accelerationMode)
void | setAccelerationMode(AccelerationMode accelerationMode)

Class QLightSensor:

void | setFieldOfView(qreal fieldOfView)

Class QRotationSensor:

void | setHasZ(bool hasZ)

Class QSensor:

void | setCurrentOrientation(int currentOrientation)
void | setEfficientBufferSize(int efficientBufferSize)
void | setMaxBufferSize(int maxBufferSize)
void | setSkipDuplicates(bool skipDuplicates)
void | skipDuplicatesChanged(bool skipDuplicates)

Class QSqlRecord:

QSqlRecord | keyValues(const QSqlRecord &keyFields) const

Class QSqlTableModel:

QSqlRecord | primaryValues(int row) const

Class QGraphicsView:

void | rubberBandChanged(QRect rubberBandRect, QPointF fromScenePoint, QPointF toScenePoint)
QRect | rubberBandRect() const

Class QMenu:

QAction * | addSection(const QString &text)
QAction * | addSection(const QIcon &icon, const QString &text)
QAction * | insertSection(QAction *before, const QString &text)
QAction * | insertSection(QAction *before, const QIcon &icon, const QString &text)

Class QAbstractFileEngine:

virtual bool | renameOverwrite(const QString &newName)
virtual bool | syncToDisk()

Class QByteArray:

QMargins | operator+(const QMargins &m1, const QMargins &m2)
QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)

Class QChar:

Script | script() const
Script | script(uint ucs4)

Class QDeadlineTimer:

QMargins | operator+(const QMargins &m1, const QMargins &m2)
QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)
QMargins | operator-(const QMargins &m1, const QMargins &m2)
QMargins | operator-(const QMargins &margins)

Class QJsonDocument:

QByteArray | toJson(JsonFormat format) const

Class QLocale:

double | toDouble(const QStringRef &s, bool *ok) const
float | toFloat(const QStringRef &s, bool *ok) const
int | toInt(const QStringRef &s, bool *ok) const
qlonglong | toLongLong(const QStringRef &s, bool *ok) const
short | toShort(const QStringRef &s, bool *ok) const
uint | toUInt(const QStringRef &s, bool *ok) const
qulonglong | toULongLong(const QStringRef &s, bool *ok) const
ushort | toUShort(const QStringRef &s, bool *ok) const

Class QMap:

iterator | insert(const_iterator pos, const Key &key, const T &value)

Class QMargins:

QMargins | operator*(const QMargins &margins, int factor)
QMargins | operator*(int factor, const QMargins &margins)
QMargins | operator*(const QMargins &margins, qreal factor)
QMargins | operator*(qreal factor, const QMargins &margins)
QMargins & | operator*=(int factor)
QMargins & | operator*=(qreal factor)
QMargins | operator+(const QMargins &m1, const QMargins &m2)
QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)
QMargins & | operator+=(const QMargins &margins)
QMargins | operator-(const QMargins &m1, const QMargins &m2)
QMargins | operator-(const QMargins &margins)
QMargins & | operator-=(const QMargins &margins)
QMargins | operator/(const QMargins &margins, int divisor)
QMargins | operator/(const QMargins &margins, qreal divisor)
QMargins & | operator/=(int divisor)
QMargins & | operator/=(qreal divisor)

Class QMarginsF:

QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)

Class QMetaMethod:

int | revision() const

Class QMetaProperty:

int | revision() const

Class QMultiMap:

typename QMap<Key, T>::iterator | insert(typename QMap<Key, T>::const_iterator pos, const Key &key, const T &value)

Class QPoint:

int | dotProduct(const QPoint &p1, const QPoint &p2)
QMargins | operator*(const QMargins &margins, int factor)
QMargins | operator*(int factor, const QMargins &margins)
QMargins | operator*(const QMargins &margins, qreal factor)
QMargins | operator*(qreal factor, const QMargins &margins)
QMargins | operator+(const QMargins &m1, const QMargins &m2)
QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)
QMargins | operator-(const QMargins &m1, const QMargins &m2)
QMargins | operator-(const QMargins &margins)
QMargins | operator/(const QMargins &margins, int divisor)
QMargins | operator/(const QMargins &margins, qreal divisor)

Class QPointF:

qreal | dotProduct(const QPointF &p1, const QPointF &p2)
QMargins | operator*(const QMargins &margins, int factor)
QMargins | operator*(int factor, const QMargins &margins)
QMargins | operator*(const QMargins &margins, qreal factor)
QMargins | operator*(qreal factor, const QMargins &margins)
QMargins | operator+(const QMargins &m1, const QMargins &m2)
QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)
QMargins | operator-(const QMargins &m1, const QMargins &m2)
QMargins | operator-(const QMargins &margins)
QMargins | operator/(const QMargins &margins, int divisor)
QMargins | operator/(const QMargins &margins, qreal divisor)

Class QProcess:

void | setArguments(const QStringList &arguments)
void | setProgram(const QString &program)
void | start(OpenMode mode)

Class QRect:

QRect | marginsAdded(const QMargins &margins) const
QRect | marginsRemoved(const QMargins &margins) const
QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)
QRect & | operator+=(const QMargins &margins)
QRect & | operator-=(const QMargins &margins)

Class QRegularExpression:

QStringList | namedCaptureGroups() const

Class QSharedPointer:

QSharedPointer<T> | create(Args &&... args)

Class QSize:

QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)

Class QSizeF:

QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)

Class QString:

bool | contains(const QRegularExpression &re, QRegularExpressionMatch *rmatch) const
QMargins | operator+(const QMargins &m1, const QMargins &m2)
QRect | operator+(const QRect &rectangle, const QMargins &margins)
QRect | operator+(const QMargins &margins, const QRect &rectangle)

Class QStringRef:

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
QStringRef | trimmed() const

Class QUrl:

QList<QUrl> | fromStringList(const QStringList &urls, ParsingMode mode)
QStringList | toStringList(const QList<QUrl> &urls, FormattingOptions options)

Class QVarLengthArray:

void | squeeze()

Class QVector:

void | removeFirst()
void | removeLast()
T | takeFirst()
T | takeLast()

Class QIcon:

QSize | actualSize(QWindow *window, const QSize &size, Mode mode, State state) const
QPixmap | pixmap(QWindow *window, const QSize &size, Mode mode, State state) const

Class QInputMethod:

QRectF | inputItemRectangle() const
void | setInputItemRectangle(const QRectF &rect)

Class QKeySequence:

QList<QKeySequence> | listFromString(const QString &str, SequenceFormat format)
QString | listToString(const QList<QKeySequence> &list, SequenceFormat format)

Class QPlatformFontDatabase:

QSupportedWritingSystems | writingSystemsFromTrueTypeBits(quint32[4] unicodeRange, quint32[2] codePageRange)

Class QPlatformTheme:

virtual QIconEngine * | createIconEngine(const QString &iconName) const

Class QPlatformWindow:

virtual bool | isAlertState() const
virtual void | setAlertState(bool enable)

Class QRawFont:

QVector<QPointF> | advancesForGlyphIndexes(const QVector<quint32> &glyphIndexes, LayoutFlags layoutFlags) const
bool | advancesForGlyphIndexes(const quint32 *glyphIndexes, QPointF *advances, int numGlyphs, LayoutFlags layoutFlags) const

Class QVector2D:

float | distanceToLine(const QVector2D &point, const QVector2D &direction) const
float | distanceToPoint(const QVector2D &point) const

Class QVector3D:

float | distanceToPoint(const QVector3D &point) const

Class QWindow:

void | alert(int msec)

Class QLocalSocket:

void | connectToServer(OpenMode openMode)
void | setServerName(const QString &name)

Class QNetworkAccessManager:

void | encrypted(QNetworkReply *reply)

Class QNetworkReply:

void | encrypted()

Class QSslConfiguration:

QList<QSslCertificate> | localCertificateChain() const
void | setLocalCertificateChain(const QList<QSslCertificate> &localChain)

Class QSslSocket:

QList<QSslCertificate> | localCertificateChain() const
void | setLocalCertificateChain(const QList<QSslCertificate> &localChain)

### New Global Functions

QMargins | operator*(qreal factor, const QMargins &margins)
QMargins | operator*(const QMargins &margins, qreal factor)
QMargins | operator*(int factor, const QMargins &margins)
QMargins | operator*(const QMargins &margins, int factor)
QRect | operator+(const QMargins &margins, const QRect &rectangle)
QRect | operator+(const QRect &rectangle, const QMargins &margins)
QMargins | operator+(const QMargins &m1, const QMargins &m2)
QMargins | operator-(const QMargins &margins)
QMargins | operator-(const QMargins &m1, const QMargins &m2)
QMargins | operator/(const QMargins &margins, qreal divisor)
QMargins | operator/(const QMargins &margins, int divisor)
double | qDegreesToRadians(double degrees)
float | qDegreesToRadians(float degrees)
double | qDegreesToRadians(double degrees)
float | qDegreesToRadians(float degrees)
bool | qEnvironmentVariableIsEmpty(const char *varName)
bool | qEnvironmentVariableIsEmpty(const char *varName)
bool | qEnvironmentVariableIsSet(const char *varName)
bool | qEnvironmentVariableIsSet(const char *varName)
double | qRadiansToDegrees(double radians)
float | qRadiansToDegrees(float radians)
double | qRadiansToDegrees(double radians)
float | qRadiansToDegrees(float radians)
bool | qunsetenv(const char *varName)
bool | qunsetenv(const char *varName)

### New Macros

| Q_COREAPP_STARTUP_FUNCTION(QtStartUpFunction ptr)
| Q_COREAPP_STARTUP_FUNCTION(QtStartUpFunction ptr)
| Q_GLOBAL_STATIC(Type, VariableName)
| Q_GLOBAL_STATIC(Type, VariableName)
| Q_GLOBAL_STATIC_WITH_ARGS(Type, VariableName, Arguments)
| Q_GLOBAL_STATIC_WITH_ARGS(Type, VariableName, Arguments)

### New Enum Types

enum | AccelerationMode { Combined, Gravity, User }
enum | Script { Script_Unknown, Script_Inherited, Script_Common, Script_Latin, Script_Greek, …, ScriptCount }
enum | JsonFormat { Indented, Compact }
enum | LayoutFlag { SeparateAdvances, KernedAdvances, UseDesignMetrics }
enum | AxesOrientationMode { FixedOrientation, AutomaticOrientation, UserOrientation }
enum | Visibility { Hidden, AutomaticVisibility, Windowed, Minimized, Maximized, FullScreen }
enum | ApplicationState { ApplicationSuspended, ApplicationHidden, ApplicationInactive, ApplicationActive }
enum | Edge { TopEdge, LeftEdge, RightEdge, BottomEdge }

### New Type Aliases

typedef | qoutputrangelist
typedef | qrange
typedef | qrangelist
typedef | qoutputrangelist
typedef | qrange
typedef | qrangelist

### New Properties

- accelerationMode : const
- toolTipsVisible : const
- textInteractionFlags : const
- axesOrientationMode : const
- currentOrientation : const

- skipDuplicates : const
- userOrientation : const
- active : const
- opacity : const
- visibility : const

### New QML Types

A
  ApplicationWindow

B
  Button
  ButtonStyle

C
  CheckBox
  CheckBoxStyle
  CloseEvent
  ColorDialog
  ComboBox
  ComboBoxStyle

F
  FileDialog

G
  GroupBox
  GroupBoxStyle

L
  Label

M
  Menu
  MenuBar

P
  ProgressBar
  ProgressBarStyle

R
  RadioButton
  RadioButtonStyle

S
  ScrollView
  ScrollViewStyle
  Slider
  SliderStyle
  SpinBox
  SplitView
  StackView
  StackViewDelegate
  StatusBar

T
  Tab
  TableView
  TableViewColumn
  TableViewStyle
  TabView
  TabViewStyle
  TextArea
  TextField
  TextFieldStyle
  ToolBar
  ToolButton

### New QML Properties

| active
| activeFocusItem
| application
| contentOrientation
| desktopAvailableHeight
| desktopAvailableWidth
| effectiveHorizontalItemAlignment
| horizontalItemAlignment
`(obsolete)` | logicalPixelDensity
| maximumHeight
| maximumWidth
| minimumHeight
| minimumWidth
| name
| opacity
| platform
| selectByKeyboard
| textDocument
| verticalItemAlignment
| visibility

### New QML Signals

| closing()

### New QML Methods

| alert()
| forceActiveFocus()
| forceLayout()
| forceLayout()
| nextItemInFocusChain()
| requestActivate()

## Additions to Other Qt 5 Releases

- What's New in Qt 5.6
- What's New in Qt 5.5
- What's New in Qt 5.4
- What's New in Qt 5.3
- What's New in Qt 5.2
- What's New in Qt 5.0