ui/ui/tree.h

changeset 39
4e66271541e8
parent 33
458831c574f4
child 42
29b2821d1262
equal deleted inserted replaced
38:8ccdde37275b 39:4e66271541e8
33 33
34 #ifdef __cplusplus 34 #ifdef __cplusplus
35 extern "C" { 35 extern "C" {
36 #endif 36 #endif
37 37
38 typedef struct UiModelInfo UiModelInfo;
39
40 typedef enum UiModelType UiModelType;
41
42 enum UiModelType {
43 UI_STRING = 0,
44 UI_INTEGER
45 };
46
47 struct UiModelInfo {
48 /*
49 * number of columns
50 */
51 int columns;
52
53 /*
54 * array of column types
55 * array length is the number of columns
56 */
57 UiModelType *types;
58
59 /*
60 * array of column titles
61 * array length is the number of columns
62 */
63 char **titles;
64
65 /*
66 * function for translatring model data to view data
67 * first argument is a pointer from the model (UiList, UiTree)
68 * second argument is the column index
69 * TODO: return
70 */
71 void*(*getvalue)(void*, int);
72
73 /*
74 * selection callback
75 */
76 ui_callback callback;
77
78 /*
79 * userdata for callback
80 */
81 void *userdata;
82 };
83
84 UiModelInfo* ui_model_info(UiContext *ctx, ...);
85 void ui_model_info_free(UiContext *ctx, UiModelInfo *mi);
86
38 UIWIDGET ui_listview(UiObject *obj, UiList *list, ui_model_getvalue_f getvalue, ui_callback f, void *udata); 87 UIWIDGET ui_listview(UiObject *obj, UiList *list, ui_model_getvalue_f getvalue, ui_callback f, void *udata);
39 UIWIDGET ui_listview_str(UiObject *obj, UiList *list, ui_callback f, void *udata); 88 UIWIDGET ui_listview_str(UiObject *obj, UiList *list, ui_callback f, void *udata);
40 UIWIDGET ui_listview_nv(UiObject *obj, char *listname, ui_model_getvalue_f getvalue, ui_callback f, void *udata); 89 UIWIDGET ui_listview_nv(UiObject *obj, char *listname, ui_model_getvalue_f getvalue, ui_callback f, void *udata);
90
91 UIWIDGET ui_table(UiObject *obj, UiList *model, UiModelInfo *modelinfo);
41 92
42 #ifdef __cplusplus 93 #ifdef __cplusplus
43 } 94 }
44 #endif 95 #endif
45 96

mercurial