diff -r 2dda1ad6dc7a -r 012418e7dc90 ui/common/context.h --- a/ui/common/context.h Wed Apr 02 20:31:47 2014 +0200 +++ b/ui/common/context.h Thu Apr 03 11:12:22 2014 +0200 @@ -38,13 +38,15 @@ extern "C" { #endif -typedef struct UiVar UiVar; +typedef struct UiVar UiVar; +typedef struct UiGroupWidget UiGroupWidget; struct UiContext { UiObject *toplevel; UcxMempool *mempool; UcxMap *vars; // key: char* value: UiVar* UcxList *groups; // int list + UcxList *group_widgets; // UiGroupWidget* list #ifdef UI_GTK GtkAccelGroup *accel_group; @@ -58,6 +60,12 @@ UcxMap *from; }; +struct UiGroupWidget { + UIWIDGET widget; + int *groups; + int numgroups; +}; + enum UiVarType { UI_VAR_INTEGER = 0, UI_VAR_STRING @@ -68,7 +76,8 @@ UiVar* uic_connect_var(UiContext *ctx, char *name, int type); void* uic_create_value(UcxAllocator *a, int type); - +void uic_check_group_widgets(UiContext *ctx); +void uic_add_group_widget(UiContext *ctx, UIWIDGET widget, UcxList *groups); #ifdef __cplusplus }