ui/common/context.h

changeset 162
18892c0a9adc
parent 157
0b33b9396851
child 163
b70e2a77dea0
equal deleted inserted replaced
161:b1eac0878ce7 162:18892c0a9adc
57 57
58 struct UiContext { 58 struct UiContext {
59 UiContext *parent; 59 UiContext *parent;
60 UiObject *obj; 60 UiObject *obj;
61 UcxMempool *mempool; 61 UcxMempool *mempool;
62 UcxMap *bound; // key: char* value: UiVar* 62
63 UcxMap *vars; // key: char* value: UiVar* 63 UcxMap *bound; // key: char* value: UiVar* deprecated
64 void *document; 64 UcxMap *vars; // key: char* value: UiVar* deprecated
65 void *document; // deprecated
66
67 UcxMap *vars2; // manually created context vars
68 UcxMap *vars_unbound; // unbound vars created by widgets
69
65 UcxList *groups; // int list 70 UcxList *groups; // int list
66 UcxList *group_widgets; // UiGroupWidget* list 71 UcxList *group_widgets; // UiGroupWidget* list
67 72
68 void (*set_document)(UiContext *ctx, void *document); 73 void (*set_document)(UiContext *ctx, void *document); // deprecated
69 void (*detach_document)(UiContext *ctx); 74 void (*detach_document)(UiContext *ctx); // deprecated
70 75
71 char *title; 76 char *title;
72 77
73 #ifdef UI_GTK 78 #ifdef UI_GTK
74 GtkAccelGroup *accel_group; 79 GtkAccelGroup *accel_group;
76 81
77 ui_callback close_callback; 82 ui_callback close_callback;
78 void *close_data; 83 void *close_data;
79 }; 84 };
80 85
86 // deprecated
81 struct UiVar { 87 struct UiVar {
82 void *value; 88 void *value;
83 void *orig_val; 89 void *orig_val;
84 UiVarType type; 90 UiVarType type;
85 UiVar *from; 91 UiVar *from;
92 };
93
94 // UiVar replacement, rename it to UiVar when finished
95 struct UiVar2 {
96 void *value;
97 UiVarType type;
98 UiContext *bound_from; /* bound by this context or NULL if unbound */
86 }; 99 };
87 100
88 struct UiGroupWidget { 101 struct UiGroupWidget {
89 UIWIDGET widget; 102 UIWIDGET widget;
90 int *groups; 103 int *groups;
92 }; 105 };
93 106
94 107
95 UiContext* uic_context(UiObject *toplevel, UcxMempool *mp); 108 UiContext* uic_context(UiObject *toplevel, UcxMempool *mp);
96 UiContext* uic_root_context(UiContext *ctx); 109 UiContext* uic_root_context(UiContext *ctx);
97 void uic_context_set_document(UiContext *ctx, void *document); 110 void uic_context_set_document(UiContext *ctx, void *document); // deprecated
98 void uic_context_detach_document(UiContext *ctx); 111 void uic_context_detach_document(UiContext *ctx); // deprecated
99 112
100 //UiVar* uic_get_var(UiContext *ctx, char *name); 113 //UiVar* uic_get_var(UiContext *ctx, char *name);
101 UiVar* uic_create_var(UiContext *ctx, char *name, UiVarType type); 114 UiVar* uic_create_var(UiContext *ctx, char *name, UiVarType type);
102 void* uic_create_value(UiContext *ctx, UiVarType type); 115 void* uic_create_value(UiContext *ctx, UiVarType type);
103 116

mercurial