1 #include "../../lv_examples.h"
2 #if LV_USE_MSGBOX && LV_BUILD_EXAMPLES
3 
minimize_button_event_cb(lv_event_t * e)4 static void minimize_button_event_cb(lv_event_t * e)
5 {
6     lv_obj_t * mbox = (lv_obj_t *) lv_event_get_user_data(e);
7     lv_obj_add_flag(mbox, LV_OBJ_FLAG_HIDDEN);
8 }
9 
lv_example_msgbox_2(void)10 void lv_example_msgbox_2(void)
11 {
12     lv_obj_t * setting = lv_msgbox_create(lv_screen_active());
13     lv_obj_set_style_clip_corner(setting, true, 0);
14 
15     /* setting fixed size */
16     lv_obj_set_size(setting, 300, 200);
17 
18     /* setting's titlebar/header */
19     lv_msgbox_add_title(setting, "Setting");
20     lv_obj_t * minimize_button = lv_msgbox_add_header_button(setting, LV_SYMBOL_MINUS);
21     lv_obj_add_event_cb(minimize_button, minimize_button_event_cb, LV_EVENT_CLICKED, setting);
22     lv_msgbox_add_close_button(setting);
23 
24     /* setting's content*/
25     lv_obj_t * content = lv_msgbox_get_content(setting);
26     lv_obj_set_flex_flow(content, LV_FLEX_FLOW_COLUMN);
27     lv_obj_set_flex_align(content, LV_FLEX_ALIGN_START, LV_FLEX_ALIGN_CENTER, LV_FLEX_ALIGN_CENTER);
28     lv_obj_set_style_pad_right(content, -1, LV_PART_SCROLLBAR);
29 
30     lv_obj_t * cont_brightness = lv_obj_create(content);
31     lv_obj_set_size(cont_brightness, lv_pct(100), LV_SIZE_CONTENT);
32     lv_obj_set_flex_flow(cont_brightness, LV_FLEX_FLOW_COLUMN);
33     lv_obj_set_flex_align(cont_brightness, LV_FLEX_ALIGN_CENTER,  LV_FLEX_ALIGN_START, LV_FLEX_ALIGN_CENTER);
34 
35     lv_obj_t * lb_brightness = lv_label_create(cont_brightness);
36     lv_label_set_text(lb_brightness, "Brightness : ");
37     lv_obj_t * slider_brightness = lv_slider_create(cont_brightness);
38     lv_obj_set_width(slider_brightness, lv_pct(100));
39     lv_slider_set_value(slider_brightness, 50, LV_ANIM_OFF);
40 
41     lv_obj_t * cont_speed = lv_obj_create(content);
42     lv_obj_set_size(cont_speed, lv_pct(100), LV_SIZE_CONTENT);
43     lv_obj_set_flex_flow(cont_speed, LV_FLEX_FLOW_COLUMN);
44     lv_obj_set_flex_align(cont_speed, LV_FLEX_ALIGN_CENTER,  LV_FLEX_ALIGN_START, LV_FLEX_ALIGN_CENTER);
45 
46     lv_obj_t * lb_speed = lv_label_create(cont_speed);
47     lv_label_set_text(lb_speed, "Speed : ");
48     lv_obj_t * slider_speed = lv_slider_create(cont_speed);
49     lv_obj_set_width(slider_speed, lv_pct(100));
50     lv_slider_set_value(slider_speed, 80, LV_ANIM_OFF);
51 
52     /* footer */
53     lv_obj_t * apply_button = lv_msgbox_add_footer_button(setting, "Apply");
54     lv_obj_set_flex_grow(apply_button, 1);
55 
56     lv_obj_t * cancel_button = lv_msgbox_add_footer_button(setting, "Cancel");
57     lv_obj_set_flex_grow(cancel_button, 1);
58 
59     lv_obj_t * footer = lv_msgbox_get_footer(setting);
60     lv_obj_set_style_bg_color(footer, lv_palette_main(LV_PALETTE_INDIGO), 0);
61     lv_obj_set_style_bg_opa(footer, LV_OPA_100, 0);
62 }
63 #endif
64