Fluid 1.3.0
Material Design for QtQuick and Qml
Loading...
Searching...
No Matches
badge.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
2// SPDX-License-Identifier: MPL-2.0
3
4#pragma once
5
6#include <QtCore/qobject.h>
7#include <QtQml/qqmlregistration.h>
8
9#include "shapetokens.h"
10
11// AndroidX Material 3 generated tokens (BadgeTokens.kt, VERSION: v0_103):
12// https://android.googlesource.com/platform/frameworks/support/+/5ba2cdd61be7b6945db999b238d14f3c626136fb/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/tokens/
13// ../Badge.kt supplies padding and icon offsets at the same revision.
14// Label limits: https://m3.material.io/components/badges/specs
15
16namespace Fluid {
17
19struct Badge
20{
21 Q_GADGET
22 QML_ANONYMOUS
23
24 Q_PROPERTY(qreal size READ size CONSTANT FINAL)
25 Q_PROPERTY(qreal largeSize READ largeSize CONSTANT FINAL)
26 Q_PROPERTY(Fluid::ShapeValue shape READ shape CONSTANT FINAL)
27 Q_PROPERTY(Fluid::ShapeValue largeShape READ largeShape CONSTANT FINAL)
28 Q_PROPERTY(qreal horizontalPadding READ horizontalPadding CONSTANT FINAL)
29 Q_PROPERTY(qreal horizontalOffset READ horizontalOffset CONSTANT FINAL)
30 Q_PROPERTY(qreal verticalOffset READ verticalOffset CONSTANT FINAL)
31 Q_PROPERTY(qreal largeHorizontalOffset READ largeHorizontalOffset CONSTANT FINAL)
32 Q_PROPERTY(qreal largeVerticalOffset READ largeVerticalOffset CONSTANT FINAL)
33 Q_PROPERTY(qreal maximumCharacters READ maximumCharacters CONSTANT FINAL)
34 Q_PROPERTY(qreal maximumCount READ maximumCount CONSTANT FINAL)
35
36public:
37 constexpr qreal size() const
38 {
39 return 6.0;
40 }
41
42 constexpr qreal largeSize() const
43 {
44 return 16.0;
45 }
46
47 constexpr ShapeValue shape() const
48 {
49 return ShapeTokens{ }.cornerFull();
50 }
51
52 constexpr ShapeValue largeShape() const
53 {
54 return ShapeTokens{ }.cornerFull();
55 }
56
57 constexpr qreal horizontalPadding() const
58 {
59 return 4.0;
60 }
61
62 constexpr qreal horizontalOffset() const
63 {
64 return 6.0;
65 }
66
67 constexpr qreal verticalOffset() const
68 {
69 return 6.0;
70 }
71
72 constexpr qreal largeHorizontalOffset() const
73 {
74 return 12.0;
75 }
76
77 constexpr qreal largeVerticalOffset() const
78 {
79 return 14.0;
80 }
81
82 constexpr qreal maximumCharacters() const
83 {
84 return 4.0;
85 }
86
87 constexpr qreal maximumCount() const
88 {
89 return 999.0;
90 }
91};
92
93} // namespace Fluid
Immutable Material Design 3 badge metrics.
Definition badge.h:20
constexpr ShapeValue largeShape() const
Definition badge.h:52
qreal verticalOffset
Definition badge.h:30
Fluid::ShapeValue largeShape
Definition badge.h:27
qreal horizontalPadding
Definition badge.h:28
constexpr qreal verticalOffset() const
Definition badge.h:67
qreal horizontalOffset
Definition badge.h:29
constexpr qreal largeSize() const
Definition badge.h:42
QML_ANONYMOUSqreal size
Definition badge.h:24
constexpr qreal maximumCount() const
Definition badge.h:87
Fluid::ShapeValue shape
Definition badge.h:26
constexpr qreal largeVerticalOffset() const
Definition badge.h:77
constexpr qreal horizontalPadding() const
Definition badge.h:57
qreal largeSize
Definition badge.h:25
qreal maximumCharacters
Definition badge.h:33
constexpr qreal horizontalOffset() const
Definition badge.h:62
constexpr qreal maximumCharacters() const
Definition badge.h:82
qreal maximumCount
Definition badge.h:34
qreal largeVerticalOffset
Definition badge.h:32
constexpr qreal largeHorizontalOffset() const
Definition badge.h:72
constexpr ShapeValue shape() const
Definition badge.h:47
qreal largeHorizontalOffset
Definition badge.h:31
Material Design 3 system shape tokens.
Definition shapetokens.h:48
Fluid::ShapeValue cornerFull
Definition shapetokens.h:59