X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Futil%2Farea.h;h=da437aa7118c6cea0da3e7c6aa9d47c4e2f303bf;hb=694d127008b23ab2296d305a218d491c931ff26e;hp=2f8d822671b3ef75b486d3fa1535d0b97ab355f5;hpb=30ea5428a1a0080d01247458e0b2a8fc63ef582b;p=chaz%2Ftint2 diff --git a/src/util/area.h b/src/util/area.h index 2f8d822..da437aa 100644 --- a/src/util/area.h +++ b/src/util/area.h @@ -82,10 +82,12 @@ typedef struct { // each object can overwrite following function void (*_draw_foreground)(void *obj, cairo_t *c); - // calculate size. return '1' if size changed, '0' otherwise. + // update area's content and update size (width/heith). + // return '1' if size changed, '0' otherwise. int (*_resize)(void *obj); - void (*_add_child)(void *obj); - int (*_remove_child)(void *obj); + // after pos/size changed, the rendering engine will call _on_change_layout(Area*) + int on_changed; + void (*_on_change_layout)(void *obj); const char* (*_get_tooltip_text)(void *obj); } Area; @@ -99,7 +101,7 @@ void size_by_layout (Area *a, int pos, int level); void refresh (Area *a); // generic resize for SIZE_BY_LAYOUT objects -int resize_by_layout(void *obj); +int resize_by_layout(void *obj, int maximum_size); // set 'redraw' on an area and childs void set_redraw (Area *a);