File tree Expand file tree Collapse file tree 5 files changed +76
-0
lines changed Expand file tree Collapse file tree 5 files changed +76
-0
lines changed Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ class Theme : public QQuickAttachedPropertyPropagator
1010{
1111 Q_OBJECT
1212
13+ Q_PROPERTY (qreal defaultPadding READ defaultPadding CONSTANT)
1314 Q_PROPERTY (qreal padding READ padding WRITE setPadding
1415 RESET resetPadding NOTIFY paddingChanged)
1516 Q_PROPERTY (qreal xlPadding READ xlPadding NOTIFY paddingChanged)
@@ -61,6 +62,7 @@ class Theme : public QQuickAttachedPropertyPropagator
6162 explicit Theme (QObject *parent = nullptr );
6263
6364 // paddings
65+ qreal defaultPadding () const ;
6466 qreal padding () const ;
6567 qreal xlPadding () const ;
6668 qreal bigPadding () const ;
Original file line number Diff line number Diff line change 1+ pragma Singleton
2+
3+ import QtQml
4+ import QtQuick.Window
5+
6+ import StatusQ.Theme
7+
8+ QtObject {
9+ enum FontSize {
10+ FontSizeXS,
11+ FontSizeS,
12+ FontSizeM,
13+ FontSizeL,
14+ FontSizeXL,
15+ FontSizeXXL
16+ }
17+
18+ enum PaddingFactor {
19+ PaddingXXS,
20+ PaddingXS,
21+ PaddingS,
22+ PaddingM,
23+ PaddingL
24+ }
25+
26+ function setFontSize (target : QtObject , fontSize : int ) {
27+ switch (fontSize) {
28+ case ThemeUtils .FontSizeXS :
29+ target .Theme .fontSizeOffset = - 2
30+ break
31+ case ThemeUtils .FontSizeS :
32+ target .Theme .fontSizeOffset = - 1
33+ break
34+ case ThemeUtils .FontSizeM :
35+ target .Theme .fontSizeOffset = 0
36+ break
37+ case ThemeUtils .FontSizeL :
38+ target .Theme .fontSizeOffset = 1
39+ break
40+ case ThemeUtils .FontSizeXL :
41+ target .Theme .fontSizeOffset = 2
42+ break
43+ case ThemeUtils .FontSizeXXL :
44+ target .Theme .fontSizeOffset = 3
45+ break
46+ }
47+ }
48+
49+ function setPaddingFactor (target : QtObject , paddingFactor : int ) {
50+ switch (paddingFactor) {
51+ case ThemeUtils .PaddingXXS :
52+ target .Theme .padding = target .Theme .defaultPadding * 0.4
53+ break
54+ case ThemeUtils .PaddingXS :
55+ target .Theme .padding = target .Theme .defaultPadding * 0.6
56+ break
57+ case ThemeUtils .PaddingS :
58+ target .Theme .padding = target .Theme .defaultPadding * 0.8
59+ break
60+ case ThemeUtils .PaddingM :
61+ target .Theme .padding = target .Theme .defaultPadding
62+ break
63+ case ThemeUtils .PaddingL :
64+ target .Theme .padding = target .Theme .defaultPadding * 1.2
65+ break
66+ }
67+ }
68+ }
Original file line number Diff line number Diff line change @@ -7,3 +7,4 @@ singleton Assets 0.1 Assets.qml
77singleton Fonts 0.1 Fonts.qml
88singleton StatusColors 0.1 StatusColors.qml
99singleton Theme 0.1 Theme.qml
10+ singleton ThemeUtils 0.1 ThemeUtils.qml
Original file line number Diff line number Diff line change 192192 <file>StatusQ/Core/Theme/StatusDarkTheme.qml</file>
193193 <file>StatusQ/Core/Theme/StatusLightTheme.qml</file>
194194 <file>StatusQ/Core/Theme/Theme.qml</file>
195+ <file>StatusQ/Core/Theme/ThemeUtils.qml</file>
195196 <file>StatusQ/Core/Theme/ThemePalette.qml</file>
196197 <file>StatusQ/Core/Theme/qmldir</file>
197198 <file>StatusQ/Core/Utils/AmountsArithmetic.qml</file>
Original file line number Diff line number Diff line change @@ -29,6 +29,10 @@ Theme::Theme(QObject *parent)
2929 initialize ();
3030}
3131
32+ qreal Theme::defaultPadding () const {
33+ return s_defaultPadding;
34+ }
35+
3236qreal Theme::padding () const {
3337 return m_padding;
3438}
You can’t perform that action at this time.
0 commit comments