gc: add undescore to roots, arranged lv_mem.c regarding gc defines. Added support to Symbols using the numstr technique of encoding the characters as a number in an enum. Globals: register them directly witout the need for constructor to access them. Updated example code. Updated lv_mpy.c

This commit is contained in:
Amir Gonnen
2019-01-18 01:25:21 +02:00
parent a883f0b39a
commit 1e8ea6b15b
10 changed files with 297 additions and 208 deletions

View File

@@ -54,7 +54,7 @@ static lv_disp_t * active;
*/
void lv_disp_drv_init(lv_disp_drv_t * driver)
{
LV_GC_ROOT(disp_list) = NULL;
LV_GC_ROOT(_disp_list) = NULL;
driver->disp_fill = NULL;
driver->disp_map = NULL;
driver->disp_flush = NULL;
@@ -87,12 +87,12 @@ lv_disp_t * lv_disp_drv_register(lv_disp_drv_t * driver)
node->next = NULL;
/* Set first display as active by default */
if(LV_GC_ROOT(disp_list) == NULL) {
LV_GC_ROOT(disp_list) = node;
if(LV_GC_ROOT(_disp_list) == NULL) {
LV_GC_ROOT(_disp_list) = node;
active = node;
lv_obj_invalidate(lv_scr_act());
} else {
((lv_disp_t*)LV_GC_ROOT(disp_list))->next = node;
((lv_disp_t*)LV_GC_ROOT(_disp_list))->next = node;
}
return node;
@@ -126,10 +126,10 @@ lv_disp_t * lv_disp_get_active(void)
lv_disp_t * lv_disp_next(lv_disp_t * disp)
{
if(disp == NULL) {
return LV_GC_ROOT(disp_list);
return LV_GC_ROOT(_disp_list);
} else {
if(((lv_disp_t*)LV_GC_ROOT(disp_list))->next == NULL) return NULL;
else return ((lv_disp_t*)LV_GC_ROOT(disp_list))->next;
if(((lv_disp_t*)LV_GC_ROOT(_disp_list))->next == NULL) return NULL;
else return ((lv_disp_t*)LV_GC_ROOT(_disp_list))->next;
}
}

View File

@@ -49,7 +49,7 @@
*/
void lv_indev_drv_init(lv_indev_drv_t * driver)
{
LV_GC_ROOT(indev_list) = NULL;
LV_GC_ROOT(_indev_list) = NULL;
driver->read = NULL;
driver->type = LV_INDEV_TYPE_NONE;
driver->user_data = NULL;
@@ -76,10 +76,10 @@ lv_indev_t * lv_indev_drv_register(lv_indev_drv_t * driver)
node->group = NULL;
node->btn_points = NULL;
if(LV_GC_ROOT(indev_list) == NULL) {
LV_GC_ROOT(indev_list) = node;
if(LV_GC_ROOT(_indev_list) == NULL) {
LV_GC_ROOT(_indev_list) = node;
} else {
lv_indev_t * last = LV_GC_ROOT(indev_list);
lv_indev_t * last = LV_GC_ROOT(_indev_list);
while(last->next)
last = last->next;
@@ -98,7 +98,7 @@ lv_indev_t * lv_indev_next(lv_indev_t * indev)
{
if(indev == NULL) {
return LV_GC_ROOT(indev_list);
return LV_GC_ROOT(_indev_list);
} else {
if(indev->next == NULL) return NULL;
else return indev->next;