Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qquickiconlabel_p.h
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// Qt-Security score:significant reason:default
4
5#ifndef QQUICKICONLABEL_P_H
6#define QQUICKICONLABEL_P_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the Qt API. It exists purely as an
13// implementation detail. This header file may change from version to
14// version without notice, or even be removed.
15//
16// We mean it.
17//
18
19#include <QtQuick/qquickitem.h>
20#include <QtQuickControls2Impl/private/qtquickcontrols2implglobal_p.h>
21#include <QtQuickTemplates2/private/qquickicon_p.h>
22
23QT_BEGIN_NAMESPACE
24
25class QQuickIconLabelPrivate;
26
27class Q_QUICKCONTROLS2IMPL_EXPORT QQuickIconLabel : public QQuickItem
28{
29 Q_OBJECT
30 Q_PROPERTY(QQuickIcon icon READ icon WRITE setIcon FINAL)
31 Q_PROPERTY(QString text READ text WRITE setText FINAL)
32 Q_PROPERTY(QFont font READ font WRITE setFont FINAL)
33 Q_PROPERTY(QColor color READ color WRITE setColor FINAL)
34 Q_PROPERTY(Display display READ display WRITE setDisplay FINAL)
35 Q_PROPERTY(qreal spacing READ spacing WRITE setSpacing FINAL)
36 Q_PROPERTY(bool mirrored READ isMirrored WRITE setMirrored FINAL)
37 Q_PROPERTY(Qt::Alignment alignment READ alignment WRITE setAlignment FINAL)
38 Q_PROPERTY(qreal topPadding READ topPadding WRITE setTopPadding RESET resetTopPadding FINAL)
39 Q_PROPERTY(qreal leftPadding READ leftPadding WRITE setLeftPadding RESET resetLeftPadding FINAL)
40 Q_PROPERTY(qreal rightPadding READ rightPadding WRITE setRightPadding RESET resetRightPadding FINAL)
41 Q_PROPERTY(qreal bottomPadding READ bottomPadding WRITE setBottomPadding RESET resetBottomPadding FINAL)
42 QML_NAMED_ELEMENT(IconLabel)
43 QML_ADDED_IN_VERSION(2, 3)
44
45public:
46 enum Display {
47 IconOnly,
48 TextOnly,
49 TextBesideIcon,
50 TextUnderIcon
51 };
52 Q_ENUM(Display)
53
54 explicit QQuickIconLabel(QQuickItem *parent = nullptr);
55 ~QQuickIconLabel();
56
57 QQuickIcon icon() const;
58 void setIcon(const QQuickIcon &icon);
59
60 QString text() const;
61 void setText(const QString &text);
62
63 QFont font() const;
64 void setFont(const QFont &font);
65
66 QColor color() const;
67 void setColor(const QColor &color);
68
69 Display display() const;
70 void setDisplay(Display display);
71
72 qreal spacing() const;
73 void setSpacing(qreal spacing);
74
75 bool isMirrored() const;
76 void setMirrored(bool mirrored);
77
78 Qt::Alignment alignment() const;
79 void setAlignment(Qt::Alignment alignment);
80
81 qreal topPadding() const;
82 void setTopPadding(qreal padding);
83 void resetTopPadding();
84
85 qreal leftPadding() const;
86 void setLeftPadding(qreal padding);
87 void resetLeftPadding();
88
89 qreal rightPadding() const;
90 void setRightPadding(qreal padding);
91 void resetRightPadding();
92
93 qreal bottomPadding() const;
94 void setBottomPadding(qreal padding);
95 void resetBottomPadding();
96
97protected:
98 void componentComplete() override;
99 void geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry) override;
100
101private:
102 Q_DISABLE_COPY(QQuickIconLabel)
103 Q_DECLARE_PRIVATE(QQuickIconLabel)
104};
105
106QT_END_NAMESPACE
107
108#endif // QQUICKICONLABEL_P_H
static void completeComponent(QQuickItem *item)
static const QQuickItemPrivate::ChangeTypes itemChangeTypes
static QT_BEGIN_NAMESPACE void beginClass(QQuickItem *item)
static QRectF alignedRect(bool mirrored, Qt::Alignment alignment, const QSizeF &size, const QRectF &rectangle)