32 Q_PROPERTY(qint32 min_width MEMBER min_width CONSTANT FINAL)
34 Q_PROPERTY(qint32 max_width MEMBER max_width CONSTANT FINAL)
36 Q_PROPERTY(qml_material::
Enum::WindowClassType type MEMBER type CONSTANT FINAL)
39 Q_INVOKABLE
bool contains(i32 w)
const {
return w >= min_width && w < max_width; }
41 i32 max_width { std::numeric_limits<i32>::max() };
42 Enum::WindowClassType type { Enum::WindowClassType::WindowClassCompact };
58 Q_PROPERTY(qml_material::token::
WindowClassItem medium MEMBER medium CONSTANT FINAL)
60 Q_PROPERTY(qml_material::token::
WindowClassItem expanded MEMBER expanded CONSTANT FINAL)
62 Q_PROPERTY(qml_material::token::
WindowClassItem large MEMBER large CONSTANT FINAL)
64 Q_PROPERTY(qml_material::token::
WindowClassItem extra_large MEMBER extra_large CONSTANT FINAL)
70 std::array wcs { &compact, &medium, &expanded, &large, &extra_large };
71 for (
auto& el : wcs) {
72 if (el->contains(w))
return *el;
77 std::array wcs { &compact, &medium, &expanded, &large, &extra_large };
78 for (
auto& el : wcs) {
79 if (el->contains(w))
return el->type;
83 WindowClassItem compact { 0, 600, Type::WindowClassCompact };
84 WindowClassItem medium { 600, 840, Type::WindowClassMedium };
85 WindowClassItem expanded { 840, 1200, Type::WindowClassExpanded };
86 WindowClassItem large { 1200, 1600, Type::WindowClassLarge };
87 WindowClassItem extra_large { 1600,
88 std::numeric_limits<i32>::max(),
89 Type::WindowClassExtraLarge };
103 Q_PROPERTY(qint32 level0 MEMBER level0 CONSTANT FINAL)
105 Q_PROPERTY(qint32 level1 MEMBER level1 CONSTANT FINAL)
107 Q_PROPERTY(qint32 level2 MEMBER level2 CONSTANT FINAL)
109 Q_PROPERTY(qint32 level3 MEMBER level3 CONSTANT FINAL)
111 Q_PROPERTY(qint32 level4 MEMBER level4 CONSTANT FINAL)
113 Q_PROPERTY(qint32 level5 MEMBER level5 CONSTANT FINAL)
131 Q_PROPERTY(QEasingCurve emphasized READ emphasized CONSTANT FINAL)
133 Q_PROPERTY(QEasingCurve emphasized_accelerate READ emphasized_accelerate CONSTANT FINAL)
135 Q_PROPERTY(QEasingCurve emphasized_decelerate READ emphasized_decelerate CONSTANT FINAL)
137 Q_PROPERTY(QEasingCurve standard READ standard CONSTANT FINAL)
139 Q_PROPERTY(QEasingCurve standard_accelerate READ standard_accelerate CONSTANT FINAL)
141 Q_PROPERTY(QEasingCurve standard_decelerate READ standard_decelerate CONSTANT FINAL)
143 Q_PROPERTY(QEasingCurve legacy READ legacy CONSTANT FINAL)
145 Q_PROPERTY(QEasingCurve legacy_accelerate READ legacy_accelerate CONSTANT FINAL)
147 Q_PROPERTY(QEasingCurve legacy_decelerate READ legacy_decelerate CONSTANT FINAL)
149 Q_PROPERTY(QEasingCurve linear READ linear CONSTANT FINAL)
152 auto emphasized() const noexcept -> QEasingCurve {
return anim::emphasized(); }
153 auto emphasized_accelerate() const noexcept -> QEasingCurve {
154 return anim::emphasized_accelerate();
156 auto emphasized_decelerate() const noexcept -> QEasingCurve {
157 return anim::emphasized_decelerate();
159 auto standard() const noexcept -> QEasingCurve {
return anim::standard(); }
160 auto standard_accelerate() const noexcept -> QEasingCurve {
161 return anim::standard_accelerate();
163 auto standard_decelerate() const noexcept -> QEasingCurve {
164 return anim::standard_decelerate();
166 auto legacy() const noexcept -> QEasingCurve {
return anim::legacy(); }
167 auto legacy_accelerate() const noexcept -> QEasingCurve {
return anim::legacy_accelerate(); }
168 auto legacy_decelerate() const noexcept -> QEasingCurve {
return anim::legacy_decelerate(); }
169 auto linear() const noexcept -> QEasingCurve {
return anim::linear(); }
180 Q_PROPERTY(qreal short1 MEMBER short1 CONSTANT FINAL)
182 Q_PROPERTY(qreal short2 MEMBER short2 CONSTANT FINAL)
184 Q_PROPERTY(qreal short3 MEMBER short3 CONSTANT FINAL)
186 Q_PROPERTY(qreal short4 MEMBER short4 CONSTANT FINAL)
188 Q_PROPERTY(qreal medium1 MEMBER medium1 CONSTANT FINAL)
190 Q_PROPERTY(qreal medium2 MEMBER medium2 CONSTANT FINAL)
192 Q_PROPERTY(qreal medium3 MEMBER medium3 CONSTANT FINAL)
194 Q_PROPERTY(qreal medium4 MEMBER medium4 CONSTANT FINAL)
196 Q_PROPERTY(qreal long1 MEMBER long1 CONSTANT FINAL)
198 Q_PROPERTY(qreal long2 MEMBER long2 CONSTANT FINAL)
200 Q_PROPERTY(qreal long3 MEMBER long3 CONSTANT FINAL)
202 Q_PROPERTY(qreal long4 MEMBER long4 CONSTANT FINAL)
204 Q_PROPERTY(qreal extra_long1 MEMBER extra_long1 CONSTANT FINAL)
206 Q_PROPERTY(qreal extra_long2 MEMBER extra_long2 CONSTANT FINAL)
208 Q_PROPERTY(qreal extra_long3 MEMBER extra_long3 CONSTANT FINAL)
210 Q_PROPERTY(qreal extra_long4 MEMBER extra_long4 CONSTANT FINAL)
214 qreal short2 { 100 };
215 qreal short3 { 150 };
216 qreal short4 { 200 };
217 qreal medium1 { 250 };
218 qreal medium2 { 300 };
219 qreal medium3 { 350 };
220 qreal medium4 { 400 };
225 qreal extra_long1 { 700 };
226 qreal extra_long2 { 800 };
227 qreal extra_long3 { 900 };
228 qreal extra_long4 { 1000 };
241 Q_PROPERTY(qint32 none MEMBER none CONSTANT FINAL)
243 Q_PROPERTY(qint32 extra_small MEMBER extra_small CONSTANT FINAL)
245 Q_PROPERTY(qint32 small MEMBER small CONSTANT FINAL)
247 Q_PROPERTY(qint32 medium MEMBER medium CONSTANT FINAL)
249 Q_PROPERTY(qint32 large MEMBER large CONSTANT FINAL)
251 Q_PROPERTY(qint32 extra_large MEMBER extra_large CONSTANT FINAL)
253 Q_PROPERTY(qint32 full MEMBER full CONSTANT FINAL)
257 i32 extra_small { 4 };
261 i32 extra_large { 28 };
325 Q_PROPERTY(qint32 pressDelay READ pressDelay NOTIFY pressDelayChanged FINAL)
328 double flickDeceleration READ flickDeceleration NOTIFY flickDecelerationChanged FINAL)
330 Q_PROPERTY(
double maximumFlickVelocity READ maximumFlickVelocity NOTIFY
331 maximumFlickVelocityChanged FINAL)
333 Flick(QObject* parent =
nullptr);
335 auto pressDelay() const -> qint32;
336 auto flickDeceleration() const ->
double;
337 auto maximumFlickVelocity() const ->
double;
339 Q_SIGNAL
void pressDelayChanged();
340 Q_SIGNAL
void flickDecelerationChanged();
341 Q_SIGNAL
void maximumFlickVelocityChanged();
344 qint32 m_press_delay;
345 double m_flick_deceleration;
346 double m_maximum_flickVelocity;
357 Q_PROPERTY(QQmlListProperty<QObject> datas READ datas FINAL)
358 Q_CLASSINFO(
"DefaultProperty",
"datas")
359 QML_NAMED_ELEMENT(TokenImpl)
361 Q_PROPERTY(QString version READ version CONSTANT FINAL)
362 Q_PROPERTY(QString iconFontUrl READ icon_font_url CONSTANT FINAL)
363 Q_PROPERTY(QString iconFill0FontUrl READ icon_fill_0_font_url CONSTANT FINAL)
364 Q_PROPERTY(QString iconFill1FontUrl READ icon_fill_1_font_url CONSTANT FINAL)
367 Q_PROPERTY(qml_material::token::
TypeScale* typescale READ typescale CONSTANT FINAL)
369 Q_PROPERTY(qml_material::token::
IconToken* icon READ icon CONSTANT FINAL)
371 Q_PROPERTY(qml_material::token::
Flick* flick READ flick CONSTANT FINAL)
373 Q_PROPERTY(qml_material::token::
Elevation elevation READ elevation CONSTANT FINAL)
375 Q_PROPERTY(qml_material::token::
Duration duration READ duration CONSTANT FINAL)
377 Q_PROPERTY(qml_material::token::
Easing easing READ easing CONSTANT FINAL)
379 Q_PROPERTY(qml_material::token::
State state READ state CONSTANT FINAL)
381 Q_PROPERTY(qml_material::token::
Shape shape READ shape CONSTANT FINAL)
383 Q_PROPERTY(qml_material::token::
WindowClass window_class READ window_class CONSTANT FINAL)
385 Token(QObject* =
nullptr);
388 auto version() const -> QString;
389 auto icon_font_url() const -> QString;
390 auto icon_fill_0_font_url() const -> QString;
391 auto icon_fill_1_font_url() const -> QString;
395 auto flick() const ->
Flick*;
396 auto elevation() const -> const
Elevation&;
397 auto state() const -> const
State&;
398 auto shape() const -> const
Shape&;
400 auto duration() const -> const
Duration&;
401 auto easing() const -> const
Easing&;
403 auto datas() -> QQmlListProperty<QObject>;
405 Q_INVOKABLE
double cal_curve_scale(
double dpr) const;
418 QList<QObject*> m_datas;