#include "tuipriv.h"
#include "tgfx.h"
#include "darray.h"
+#include "util.h"
int tui_init(void)
struct tui_widget *iter, dummy;
if(w->par != par) {
- fprintf(stderr, "failed to remove widget %p from %p\n", w, par);
+ fprintf(stderr, "failed to remove widget %p from %p\n", (void*)w, (void*)par);
return;
}
return w->par;
}
+int tui_isdirty(struct tui_widget *w)
+{
+ return w->dirty;
+}
+
void tui_draw(struct tui_widget *w)
{
struct tui_widget *iter;
if(w->cbfunc[TUI_DRAW]) {
w->cbfunc[TUI_DRAW](w, 0);
}
+ w->dirty = 0;
iter = w->child;
while(iter) {
tui_draw(iter);
iter = iter->next;
}
+
+ tg_redraw();
}
void tui_set_callback(struct tui_widget *w, int type, tui_callback func, void *cls)
w->cbcls[type] = cls;
}
+int tui_set_title(struct tui_widget *w, const char *s)
+{
+ free(w->title);
+ w->title = strdup_nf(s);
+ return 0;
+}
+
+const char *tui_get_title(struct tui_widget *w)
+{
+ return w->title;
+}
+
struct tui_widget *tui_window(const char *title, int x, int y, int width, int height)
{
struct tui_widget *w;