1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 #include <stdio.h>
30 #include <stdlib.h>
31 #include <inttypes.h>
32
33 #include "../ui/widget.h"
34
35 #include "container.h"
36 #include "../common/context.h"
37 #include "../common/object.h"
38
39
40 UIWIDGET ui_customwidget_create(UiObject *obj, ui_createwidget_func create_widget,
void *userdata, UiWidgetArgs *args) {
41 Arg xargs[
64];
42 int n =
0;
43
44 UiContainerPrivate *ctn = ui_obj_container(obj);
45 UiLayout layout =
UI_ARGS2LAYOUT(args);
46
47 Widget parent = ui_container_prepare(ctn, &layout, xargs, &n);
48 Widget widget = create_widget(obj, args, userdata, parent, xargs, n);
49 XtManageChild(widget);
50 ui_container_add(ctn, widget);
51
52 return widget;
53 }
54
55
56 UIEXPORT UIWIDGET ui_separator_create(UiObject *obj, UiWidgetArgs *args) {
57 Arg xargs[
64];
58 int n =
0;
59
60 UiContainerPrivate *ctn = ui_obj_container(obj);
61 UiLayout layout =
UI_ARGS2LAYOUT(args);
62
63 char *name = args->name ? (
char*)args->name :
"separator";
64 Widget parent = ui_container_prepare(ctn, &layout, xargs, &n);
65 Widget widget = XmCreateSeparator(parent, name, xargs, n);
66 XtManageChild(widget);
67 ui_container_add(ctn, widget);
68
69 return widget;
70 }
71
72 void ui_widget_set_size(
UIWIDGET w,
int width,
int height) {
73
74 }
75
76 void ui_widget_redraw(
UIWIDGET w) {
77
78 }
79