1
0
mirror of https://github.com/lvgl/lvgl.git synced 2025-01-21 06:53:01 +08:00
lvgl/src/lv_themes/lv_theme.c
2020-04-17 13:34:27 +02:00

119 lines
2.1 KiB
C

/**
* @file lv_theme.c
*
*/
/*********************
* INCLUDES
*********************/
#include "lv_theme.h"
#include "../lv_core/lv_obj.h"
/*********************
* DEFINES
*********************/
/**********************
* TYPEDEFS
**********************/
/**********************
* STATIC PROTOTYPES
**********************/
/**********************
* STATIC VARIABLES
**********************/
static lv_theme_t * act_theme;
/**********************
* MACROS
**********************/
/**********************
* GLOBAL FUNCTIONS
**********************/
/**
* Set a theme for the system.
* From now, all the created objects will use styles from this theme by default
* @param th pointer to theme (return value of: 'lv_theme_init_xxx()')
*/
void lv_theme_set_act(lv_theme_t * th)
{
act_theme = th;
}
/**
* Get the current system theme.
* @return pointer to the current system theme. NULL if not set.
*/
lv_theme_t * lv_theme_get_act(void)
{
return act_theme;
}
/**
* Get the small font of the theme
* @return pointer to the font
*/
const lv_font_t * lv_theme_get_font_small(void)
{
return act_theme->font_small;
}
/**
* Get the normal font of the theme
* @return pointer to the font
*/
const lv_font_t * lv_theme_get_font_normal(void)
{
return act_theme->font_normal;
}
/**
* Get the subtitle font of the theme
* @return pointer to the font
*/
const lv_font_t * lv_theme_get_font_subtitle(void)
{
return act_theme->font_subtitle;
}
/**
* Get the title font of the theme
* @return pointer to the font
*/
const lv_font_t * lv_theme_get_font_title(void)
{
return act_theme->font_title;
}
/**
* Get the primary color of the theme
* @return the color
*/
lv_color_t lv_theme_get_color_primary(void)
{
return act_theme->color_primary;
}
/**
* Get the flags of the theme
* @return the flags
*/
uint32_t lv_theme_get_flags(void)
{
return act_theme->flags;
}
void lv_theme_apply(lv_obj_t * obj, lv_theme_style_t name)
{
act_theme->apply_xcb(obj, name);
}
/**********************
* STATIC FUNCTIONS
**********************/