* Add dithering to gradients * Add support for 8x8 matrix for ordered dithering * Fix CI errors * Try error diffusion on vertical gradient too * Vertical error diffusion dithering * Add support for runtime based dithering mode selection (from none, ordered, error diffusion). * Reduce the binary size of the code by sharing the dithering table when appropriate. * Fix CI * Fix CI * Review corrections * Fix union mapping * Revert bg_color changes * Fix for keeping bg_color in the API. * Fix after review * Add support for setting multiple stops per gradient in the style API * Let's make an example Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
34 lines
828 B
C
34 lines
828 B
C
#include "../lv_examples.h"
|
|
#if LV_BUILD_EXAMPLES
|
|
|
|
/**
|
|
* Using the background style properties
|
|
*/
|
|
void lv_example_style_2(void)
|
|
{
|
|
static lv_style_t style;
|
|
lv_style_init(&style);
|
|
lv_style_set_radius(&style, 5);
|
|
|
|
/*Make a gradient*/
|
|
lv_style_set_bg_opa(&style, LV_OPA_COVER);
|
|
static lv_gradient_t grad;
|
|
grad.dir = LV_GRAD_DIR_VER;
|
|
grad.stops_count = 2;
|
|
grad.stops[0].color = lv_palette_lighten(LV_PALETTE_GREY, 1);
|
|
grad.stops[1].color = lv_palette_main(LV_PALETTE_BLUE);
|
|
|
|
/*Shift the gradient to the bottom*/
|
|
grad.stops[0].frac = 128;
|
|
grad.stops[1].frac = 192;
|
|
|
|
lv_style_set_bg_gradient(&style, &grad);
|
|
|
|
/*Create an object with the new style*/
|
|
lv_obj_t * obj = lv_obj_create(lv_scr_act());
|
|
lv_obj_add_style(obj, &style, 0);
|
|
lv_obj_center(obj);
|
|
}
|
|
|
|
#endif
|