Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qquickroundbutton.cpp
Go to the documentation of this file.
1// Copyright (C) 2017 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
5
6#include <QtQuickTemplates2/private/qquickbutton_p_p.h>
7
9
14
31{
32 Q_DECLARE_PUBLIC(QQuickRoundButton)
33
34public:
35 void setRadius(qreal newRadius = -1.0);
36
38 bool explicitRadius = false;
39};
40
42{
44 const qreal oldRadius = radius;
45 if (newRadius < 0)
46 radius = qMax<qreal>(0, qMin<qreal>(width, height) / 2);
47 else
48 radius = newRadius;
49
50 if (!qFuzzyCompare(radius, oldRadius))
51 emit q->radiusChanged();
52}
53
58
75{
76 Q_D(const QQuickRoundButton);
77 return d->radius;
78}
79
81{
83 d->explicitRadius = true;
84 d->setRadius(radius);
85}
86
88{
90 d->explicitRadius = false;
91 d->setRadius();
92}
93
94void QQuickRoundButton::geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry)
95{
97 QQuickControl::geometryChange(newGeometry, oldGeometry);
98 if (!d->explicitRadius)
99 d->setRadius();
100}
101
103
104#include "moc_qquickroundbutton_p.cpp"
void geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry) override
The QQuickItem class provides the most basic of all visual items in \l {Qt Quick}.
Definition qquickitem.h:63
A push-button control with rounded corners that can be clicked by the user.
void setRadius(qreal newRadius=-1.0)
void geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry) override
QQuickRoundButton(QQuickItem *parent=nullptr)
void setRadius(qreal radius)
\inmodule QtCore\reentrant
Definition qrect.h:484
Combined button and popup list for selecting options.
bool qFuzzyCompare(qfloat16 p1, qfloat16 p2) noexcept
Definition qfloat16.h:333
GLint GLsizei GLsizei height
GLint GLsizei width
GLdouble GLdouble GLdouble GLdouble q
Definition qopenglext.h:259
#define emit
double qreal
Definition qtypes.h:187