1 /**
2  * @file lv_theme_material.h
3  *
4  */
5 
6 #ifndef LV_THEME_MATERIAL_H
7 #define LV_THEME_MATERIAL_H
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 /*********************
14  *      INCLUDES
15  *********************/
16 #include "../lv_conf_internal.h"
17 
18 #if LV_USE_THEME_MATERIAL
19 
20 /*********************
21  *      DEFINES
22  *********************/
23 typedef enum {
24     LV_THEME_MATERIAL_FLAG_DARK =  0x01,
25     LV_THEME_MATERIAL_FLAG_LIGHT = 0x02,
26     LV_THEME_MATERIAL_FLAG_NO_TRANSITION  = 0x10,
27     LV_THEME_MATERIAL_FLAG_NO_FOCUS  = 0x20,
28 } lv_theme_material_flag_t;
29 
30 /**********************
31  *      TYPEDEFS
32  **********************/
33 
34 /**********************
35  * GLOBAL PROTOTYPES
36  **********************/
37 
38 /**
39  * Initialize the default
40  * @param color_primary the primary color of the theme
41  * @param color_secondary the secondary color for the theme
42  * @param flags ORed flags starting with `LV_THEME_DEF_FLAG_...`
43  * @param font_small pointer to a small font
44  * @param font_normal pointer to a normal font
45  * @param font_subtitle pointer to a large font
46  * @param font_title pointer to a extra large font
47  * @return a pointer to reference this theme later
48  */
49 lv_theme_t * lv_theme_material_init(lv_color_t color_primary, lv_color_t color_secondary, uint32_t flags,
50                                     const lv_font_t * font_small, const lv_font_t * font_normal, const lv_font_t * font_subtitle,
51                                     const lv_font_t * font_title);
52 /**********************
53  *      MACROS
54  **********************/
55 
56 #endif
57 
58 #ifdef __cplusplus
59 } /* extern "C" */
60 #endif
61 
62 #endif /*LV_THEME_MATERIAL_H*/
63