6#include "qml_material/util/corner.hpp"
11class Elevation :
public QQuickItem {
13 QML_NAMED_ELEMENT(ElevationImpl)
15 Q_PROPERTY(qint32 elevation READ elevation WRITE setelevation NOTIFY elevationChanged FINAL)
16 Q_PROPERTY(qreal radius READ radius WRITE setRadius NOTIFY radiusChanged FINAL)
17 Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged FINAL)
18 Q_PROPERTY(CornersGroup corners READ corners WRITE setCorners NOTIFY cornersChanged FINAL)
20 Elevation(QQuickItem* parent =
nullptr);
21 ~Elevation()
override;
23 auto elevation() const -> qint32;
24 void setelevation(qint32);
25 Q_SIGNAL
void elevationChanged();
27 auto corners() const -> const CornersGroup&;
28 void setCorners(const CornersGroup&);
29 Q_SIGNAL
void cornersChanged();
32 void setRadius(qreal newRadius);
33 Q_SIGNAL
void radiusChanged();
36 void setColor(const QColor& newColor);
37 Q_SIGNAL
void colorChanged();
39 void componentComplete() override;
42 void itemChange(QQuickItem::ItemChange change,
43 const QQuickItem::ItemChangeData& value) override;
44 QSGNode* updatePaintNode(QSGNode* node, QQuickItem::UpdatePaintNodeData* data) override;
48 CornersGroup m_corners;