Fluid 1.3.0
Material Design for QtQuick and Qml
Loading...
Searching...
No Matches
buttongroup.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// Component values map to the AndroidX Material 3 generated tokens:
12// ConnectedButtonGroupSmallTokens.kt. Standard spacing and pressed expansion
13// are the expressive button-group layout values shared by every size.
14
15namespace Fluid {
16
19{
20 Q_GADGET
21 QML_ANONYMOUS
22
23 Q_PROPERTY(qreal standardSpacing READ standardSpacing CONSTANT FINAL)
24 Q_PROPERTY(qreal connectedSpacing READ connectedSpacing CONSTANT FINAL)
25 Q_PROPERTY(qreal smallReferenceHeight READ smallReferenceHeight CONSTANT FINAL)
26 Q_PROPERTY(
28 Q_PROPERTY(qreal connectedInnerCorner READ connectedInnerCorner CONSTANT FINAL)
29 Q_PROPERTY(qreal pressedInnerCorner READ pressedInnerCorner CONSTANT FINAL)
30 Q_PROPERTY(
32 Q_PROPERTY(
34
35public:
36 constexpr qreal standardSpacing() const
37 {
38 return 12.0;
39 }
40 constexpr qreal connectedSpacing() const
41 {
42 return 2.0;
43 }
44 constexpr qreal smallReferenceHeight() const
45 {
46 return 40.0;
47 }
49 {
50 return ShapeTokens{ }.cornerFull();
51 }
52 constexpr qreal connectedInnerCorner() const
53 {
54 return ShapeTokens{ }.cornerValueSmall();
55 }
56 constexpr qreal pressedInnerCorner() const
57 {
59 }
60 constexpr qreal selectedInnerCornerPercentage() const
61 {
62 return 50.0;
63 }
64 constexpr qreal standardPressedExpansionRatio() const
65 {
66 return 0.15;
67 }
68};
69
70} // namespace Fluid
Material Design 3 Expressive button-group tokens.
Definition buttongroup.h:19
constexpr qreal smallReferenceHeight() const
Definition buttongroup.h:44
constexpr qreal standardPressedExpansionRatio() const
Definition buttongroup.h:64
qreal selectedInnerCornerPercentage
Definition buttongroup.h:31
constexpr qreal connectedSpacing() const
Definition buttongroup.h:40
constexpr qreal selectedInnerCornerPercentage() const
Definition buttongroup.h:60
constexpr qreal connectedInnerCorner() const
Definition buttongroup.h:52
Fluid::ShapeValue connectedContainerShape
Definition buttongroup.h:27
constexpr ShapeValue connectedContainerShape() const
Definition buttongroup.h:48
qreal standardPressedExpansionRatio
Definition buttongroup.h:33
constexpr qreal pressedInnerCorner() const
Definition buttongroup.h:56
QML_ANONYMOUSqreal standardSpacing
Definition buttongroup.h:23
Material Design 3 system shape tokens.
Definition shapetokens.h:48
Fluid::ShapeValue cornerFull
Definition shapetokens.h:59
qreal cornerValueExtraSmall
Definition shapetokens.h:72