Fluid 1.3.0
Material Design for QtQuick and Qml
Loading...
Searching...
No Matches
radiobutton.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 "measurementtokens.h"
10#include "statetokens.h"
11
12// Component values map to the AndroidX Material 3 generated tokens where available:
13// https://android.googlesource.com/platform/frameworks/support/+/5ba2cdd61be7b6945db999b238d14f3c626136fb/compose/material3/material3/src/commonMain/kotlin/androidx/compose/material3/tokens/
14// RadioButtonTokens.kt; state-layer opacities are provided by StateTokens.kt.
15
16namespace Fluid {
17
20{
21 Q_GADGET
22 QML_ANONYMOUS
23
24 Q_PROPERTY(qreal minimumInteractiveSize READ minimumInteractiveSize CONSTANT FINAL)
25 Q_PROPERTY(qreal iconSize READ iconSize CONSTANT FINAL)
26 Q_PROPERTY(qreal stateLayerSize READ stateLayerSize CONSTANT FINAL)
27 Q_PROPERTY(qreal indicatorPadding READ indicatorPadding CONSTANT FINAL)
28 Q_PROPERTY(qreal outlineWidth READ outlineWidth CONSTANT FINAL)
29 Q_PROPERTY(qreal contentPadding READ contentPadding CONSTANT FINAL)
30 Q_PROPERTY(qreal contentSpacing READ contentSpacing CONSTANT FINAL)
31 Q_PROPERTY(qreal selectedDisabledIconOpacity READ selectedDisabledIconOpacity CONSTANT FINAL)
32 Q_PROPERTY(
34 Q_PROPERTY(qreal hoverStateLayerOpacity READ hoverStateLayerOpacity CONSTANT FINAL)
35 Q_PROPERTY(qreal focusStateLayerOpacity READ focusStateLayerOpacity CONSTANT FINAL)
36 Q_PROPERTY(qreal pressedStateLayerOpacity READ pressedStateLayerOpacity CONSTANT FINAL)
37
38public:
39 constexpr qreal minimumInteractiveSize() const
40 {
42 }
43 constexpr qreal iconSize() const
44 {
45 return 20.0;
46 }
47 constexpr qreal stateLayerSize() const
48 {
49 return 40.0;
50 }
51 // Fluid layout metric matching the AndroidX RadioButtonPadding constant.
52 constexpr qreal indicatorPadding() const
53 {
54 return 2.0;
55 }
56 constexpr qreal outlineWidth() const
57 {
58 return 2.0;
59 }
60 // Fluid label/layout metrics; AndroidX RadioButtonTokens has no label composition tokens.
61 constexpr qreal contentPadding() const
62 {
63 return 8.0;
64 }
65 constexpr qreal contentSpacing() const
66 {
67 return 8.0;
68 }
69 constexpr qreal selectedDisabledIconOpacity() const
70 {
71 return 0.38;
72 }
73 constexpr qreal unselectedDisabledIconOpacity() const
74 {
75 return 0.38;
76 }
77 constexpr qreal hoverStateLayerOpacity() const
78 {
80 }
81 constexpr qreal focusStateLayerOpacity() const
82 {
84 }
85 constexpr qreal pressedStateLayerOpacity() const
86 {
88 }
89};
90
91} // namespace Fluid
Material Design 3 system measurement tokens.
QML_ANONYMOUSqreal minimumInteractiveSize
Material Design 3 radio-button tokens.
Definition radiobutton.h:20
constexpr qreal contentSpacing() const
Definition radiobutton.h:65
constexpr qreal hoverStateLayerOpacity() const
Definition radiobutton.h:77
qreal focusStateLayerOpacity
Definition radiobutton.h:35
qreal selectedDisabledIconOpacity
Definition radiobutton.h:31
constexpr qreal selectedDisabledIconOpacity() const
Definition radiobutton.h:69
constexpr qreal iconSize() const
Definition radiobutton.h:43
constexpr qreal unselectedDisabledIconOpacity() const
Definition radiobutton.h:73
constexpr qreal pressedStateLayerOpacity() const
Definition radiobutton.h:85
constexpr qreal contentPadding() const
Definition radiobutton.h:61
constexpr qreal outlineWidth() const
Definition radiobutton.h:56
constexpr qreal stateLayerSize() const
Definition radiobutton.h:47
QML_ANONYMOUSqreal minimumInteractiveSize
Definition radiobutton.h:24
constexpr qreal indicatorPadding() const
Definition radiobutton.h:52
qreal unselectedDisabledIconOpacity
Definition radiobutton.h:33
qreal hoverStateLayerOpacity
Definition radiobutton.h:34
constexpr qreal focusStateLayerOpacity() const
Definition radiobutton.h:81
qreal pressedStateLayerOpacity
Definition radiobutton.h:36
Material Design 3 system state tokens.
Definition statetokens.h:18
qreal focusStateLayerOpacity
Definition statetokens.h:23
qreal hoverStateLayerOpacity
Definition statetokens.h:24
qreal pressedStateLayerOpacity
Definition statetokens.h:25