}
darr_clear(wl->entries);
wl->dirty = 1;
+
+ tui_call_callback(w, TUI_ONMODIFY);
}
void tui_add_list_item(struct tui_widget *w, const char *text)
str = strdup_nf(text);
darr_push(wl->entries, &str);
wl->dirty = 1;
+
+ tui_call_callback(w, TUI_ONMODIFY);
}
int tui_num_list_items(struct tui_widget *w)
}
wl->dirty = 1;
+ tui_call_callback(w, TUI_ONMODIFY);
return 0;
}
wl->view_offs = wl->sel - wl->height;
}
wl->dirty = 1;
+ tui_call_callback(w, TUI_ONMODIFY);
return 0;
}
wl->view_offs = wl->sel;
}
wl->dirty = 1;
+ tui_call_callback(w, TUI_ONMODIFY);
return 0;
}
wl->sel = 0;
wl->view_offs = 0;
wl->dirty = 1;
+ tui_call_callback(w, TUI_ONMODIFY);
return 0;
}
wl->view_offs = nelem - wl->height;
if(wl->view_offs < 0) wl->view_offs = 0;
wl->dirty = 1;
+ tui_call_callback(w, TUI_ONMODIFY);
return 0;
}
nelem = darr_size(wl->entries);
qsort(wl->entries, nelem, sizeof *wl->entries, cmpfunc);
+
+ wl->dirty = 1;
+ tui_call_callback(w, TUI_ONMODIFY);
}
static void draw_list(struct tui_widget *w, void *cls)
x++;
for(i=0; i<num; i++) {
idx = i + wl->view_offs;
- if(idx == wl->sel) {
+ if(w->focus && idx == wl->sel) {
tg_bgcolor(TGFX_CYAN);
tg_fgcolor(TGFX_BLUE);