QmlMaterial 0.1.0
Loading...
Searching...
No Matches
helper.hpp
1#pragma once
2
3#include <QtCore/QObject>
4#include <QtGui/QColor>
5
6#include "qml_material/enum.hpp"
7
8#include "cpp/palettes/tones.h"
9
10namespace qml_material
11{
12struct MdScheme {
13 QRgb primary;
14 QRgb on_primary;
15 QRgb primary_container;
16 QRgb on_primary_container;
17 QRgb secondary;
18 QRgb on_secondary;
19 QRgb secondary_container;
20 QRgb on_secondary_container;
21 QRgb tertiary;
22 QRgb on_tertiary;
23 QRgb tertiary_container;
24 QRgb on_tertiary_container;
25 QRgb error;
26 QRgb on_error;
27 QRgb error_container;
28 QRgb on_error_container;
29 QRgb background;
30 QRgb on_background;
31 QRgb surface;
32 QRgb on_surface;
33 QRgb surface_variant;
34 QRgb on_surface_variant;
35 QRgb outline;
36 QRgb outline_variant;
37 QRgb shadow;
38 QRgb scrim;
39 QRgb inverse_surface;
40 QRgb inverse_on_surface;
41 QRgb inverse_primary;
42
43 // surface
44 QRgb surface_1;
45 QRgb surface_2;
46 QRgb surface_3;
47 QRgb surface_4;
48 QRgb surface_5;
49
50 // surface v2
51 QRgb surface_dim;
52 QRgb surface_bright;
53 QRgb surface_container;
54 QRgb surface_container_low;
55 QRgb surface_container_lowest;
56 QRgb surface_container_high;
57 QRgb surface_container_highest;
58
59 material_color_utilities::TonalPalette neutral_palette { 0 };
60};
61
62auto MaterialLightColorScheme(QRgb, Enum::PaletteType) -> MdScheme;
63auto MaterialDarkColorScheme(QRgb, Enum::PaletteType) -> MdScheme;
64
65QRgb MaterialBlendHctHue(const QRgb design_color, const QRgb key_color, const double mount);
66} // namespace qml_material