75 lines
1.6 KiB
C

#ifndef EEZ_LVGL_UI_SCREENS_H
#define EEZ_LVGL_UI_SCREENS_H
#include <lvgl.h>
#include <ui/symbols.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef struct _objects_t {
lv_obj_t *mainScr;
lv_obj_t *chartScr;
lv_obj_t *debugScr;
lv_obj_t *rolloScr;
lv_obj_t *rolloPosScr;
lv_obj_t *menuScr;
lv_obj_t *temp_arc;
lv_obj_t *temp_txt;
lv_obj_t *hum_txt;
lv_obj_t *press_txt;
lv_obj_t *panel_arc;
lv_obj_t *chart;
lv_obj_t *x_scale;
lv_obj_t *y_scale;
lv_obj_t *chart_header;
lv_obj_t *left_lbl;
lv_obj_t *right_lbl;
lv_obj_t *debugTxt;
lv_obj_t *heaterIcn;
lv_obj_t *bufferIcn;
lv_obj_t *wifiIcn;
lv_obj_t *outTemp_txt;
lv_obj_t *time_txt;
lv_obj_t *deviceDropdown;
lv_obj_t *lam[9];
lv_chart_cursor_t *chart_cursor;
lv_chart_series_t *chart_series;
lv_obj_t *rolloPos;
lv_obj_t *rolloRot;
lv_obj_t *selDevicesLbl;
} objects_t;
extern objects_t objects;
typedef enum ScreensEnum {
SCREEN_ID_MAIN = 0,
SCREEN_ID_CHART = 1,
SCREEN_ID_DEBUG = 2,
SCREEN_ID_LEN
} ScreensEnum;
typedef enum ChartsEnum {
CHART_ID_NONE = 0,
CHART_ID_TEMP = 1,
CHART_ID_HUM = 2,
CHART_ID_PRESS = 3,
CHART_ID_LEN
} ChartsEnum;
void addStatusIcons(lv_obj_t *parent_obj);
void create_screen_main();
void create_screen_chart();
void create_screen_debug();
void create_screen_menu();
void rolloCheckbox_add(const char *txt, void *_tahomaDevice, bool _checked);
void rolloCheckbox_finish(void);
void create_screen_rollos();
void create_screen_rolloPos();
void create_screens();
#ifdef __cplusplus
}
#endif
#endif /*EEZ_LVGL_UI_SCREENS_H*/