ui/motif/label.c

changeset 112
c3f2f16fa4b8
parent 108
77254bd6dccb
child 113
dde28a806552
equal deleted inserted replaced
111:81c4f73236a4 112:c3f2f16fa4b8
39 static UIWIDGET label_create(UiObject *obj, UiLabelArgs *args, int align) { 39 static UIWIDGET label_create(UiObject *obj, UiLabelArgs *args, int align) {
40 Arg xargs[16]; 40 Arg xargs[16];
41 int n = 0; 41 int n = 0;
42 42
43 UiContainerPrivate *ctn = ui_obj_container(obj); 43 UiContainerPrivate *ctn = ui_obj_container(obj);
44 UI_APPLY_LAYOUT(ctn->layout, args); 44 UiLayout layout = UI_ARGS2LAYOUT(args);
45 45
46 Widget parent = ctn->prepare(ctn, xargs, &n); 46 Widget parent = ui_container_prepare(ctn, &layout, xargs, &n);
47 47
48 XtSetArg(xargs[n], XmNalignment, align); n++; 48 XtSetArg(xargs[n], XmNalignment, align); n++;
49 XmString label = NULL; 49 XmString label = NULL;
50 if(args->label) { 50 if(args->label) {
51 label = XmStringCreateLocalized((char*)args->label); 51 label = XmStringCreateLocalized((char*)args->label);
53 } 53 }
54 54
55 char *name = args->name ? (char*)args->name : "label"; 55 char *name = args->name ? (char*)args->name : "label";
56 Widget w = XmCreateLabel(parent, name, xargs, n); 56 Widget w = XmCreateLabel(parent, name, xargs, n);
57 XtManageChild(w); 57 XtManageChild(w);
58 ctn->add(ctn, w); 58 ui_container_add(ctn, w);
59 59
60 XmStringFree(label); 60 XmStringFree(label);
61 return w; 61 return w;
62 } 62 }
63 63
106 UIWIDGET ui_progressbar_create(UiObject *obj, UiProgressbarArgs *args) { 106 UIWIDGET ui_progressbar_create(UiObject *obj, UiProgressbarArgs *args) {
107 Arg xargs[16]; 107 Arg xargs[16];
108 int n = 0; 108 int n = 0;
109 109
110 UiContainerPrivate *ctn = ui_obj_container(obj); 110 UiContainerPrivate *ctn = ui_obj_container(obj);
111 UI_APPLY_LAYOUT(ctn->layout, args); 111 UiLayout layout = UI_ARGS2LAYOUT(args);
112 112
113 Widget parent = ctn->prepare(ctn, xargs, &n); 113 Widget parent = ui_container_prepare(ctn, &layout, xargs, &n);
114 114
115 char *name = args->name ? (char*)args->name : "progressbar"; 115 char *name = args->name ? (char*)args->name : "progressbar";
116 Widget frame = XmCreateFrame(parent, name, xargs, n); 116 Widget frame = XmCreateFrame(parent, name, xargs, n);
117 ui_container_add(ctn, frame);
117 118
118 // create a button and get some informations about the height, shadow, highlight, .... 119 // create a button and get some informations about the height, shadow, highlight, ....
119 // we want the frame to have the same dimensions as a normal button 120 // we want the frame to have the same dimensions as a normal button
120 Widget test = XmCreatePushButton(frame, "button", NULL, 0); 121 Widget test = XmCreatePushButton(frame, "button", NULL, 0);
121 XtManageChild(test); 122 XtManageChild(test);
189 UIWIDGET ui_progressspinner_create(UiObject* obj, UiProgressbarSpinnerArgs *args) { 190 UIWIDGET ui_progressspinner_create(UiObject* obj, UiProgressbarSpinnerArgs *args) {
190 Arg xargs[16]; 191 Arg xargs[16];
191 int n = 0; 192 int n = 0;
192 193
193 UiContainerPrivate *ctn = ui_obj_container(obj); 194 UiContainerPrivate *ctn = ui_obj_container(obj);
194 UI_APPLY_LAYOUT(ctn->layout, args); 195 UiLayout layout = UI_ARGS2LAYOUT(args);
195 196
196 Widget parent = ctn->prepare(ctn, xargs, &n); 197 Widget parent = ui_container_prepare(ctn, &layout, xargs, &n);
197 198
198 XmString label = XmStringCreateSimple(""); 199 XmString label = XmStringCreateSimple("");
199 XtSetArg(xargs[n], XmNlabelString, label); n++; 200 XtSetArg(xargs[n], XmNlabelString, label); n++;
200 XtSetArg(xargs[n], XmNalignment, XmALIGNMENT_END); n++; 201 XtSetArg(xargs[n], XmNalignment, XmALIGNMENT_END); n++;
201 XtSetArg(xargs[n], gridMinWidth, 40); n++; 202 XtSetArg(xargs[n], gridMinWidth, 40); n++;
202 203
203 char *name = args->name ? (char*)args->name : "progresss_spinner"; 204 char *name = args->name ? (char*)args->name : "progresss_spinner";
204 Widget w = XmCreateLabel(parent, name, xargs, n); 205 Widget w = XmCreateLabel(parent, name, xargs, n);
205 XtManageChild(w); 206 XtManageChild(w);
206 ctn->add(ctn, w); 207 ui_container_add(ctn, w);
207 208
208 UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_INTEGER); 209 UiVar* var = uic_widget_var(obj->ctx, obj->ctx, args->value, args->varname, UI_VAR_INTEGER);
209 if(var) { 210 if(var) {
210 UiInteger *value = var->value; 211 UiInteger *value = var->value;
211 value->obj = w; 212 value->obj = w;

mercurial