80 //printf("i: %d\n", i); |
80 //printf("i: %d\n", i); |
81 |
81 |
82 fflush(stdout); |
82 fflush(stdout); |
83 } |
83 } |
84 |
84 |
|
85 void list_data_get(UiEvent *event, UiSelection *selection, UiList *l, int i) { |
|
86 ui_selection_settext(selection, "Hello World!", -1); |
|
87 } |
|
88 |
|
89 void list_drop(UiEvent *event, UiSelection *selection, UiList *l, int i) { |
|
90 char *text = ui_selection_gettext(selection); |
|
91 printf("dnd drop: {%s}\n", text); |
|
92 free(text); |
|
93 } |
|
94 |
85 Document* create_doc(char *str) { |
95 Document* create_doc(char *str) { |
86 Document *doc = ui_document_new(sizeof(Document)); |
96 Document *doc = ui_document_new(sizeof(Document)); |
87 UiContext *ctx = ui_document_context(doc); |
97 UiContext *ctx = ui_document_context(doc); |
88 |
98 |
89 doc->text = ui_text_new(ctx, "text"); |
99 doc->text = ui_text_new(ctx, "text"); |
161 d1->t1->observers = ui_add_observer(d1->t1->observers, observ, "t1"); |
171 d1->t1->observers = ui_add_observer(d1->t1->observers, observ, "t1"); |
162 //d1->text->observers = ui_add_observer(d1->text->observers, observ, "text"); |
172 //d1->text->observers = ui_add_observer(d1->text->observers, observ, "text"); |
163 |
173 |
164 UiModel *model = ui_model(obj->ctx, UI_ICON_TEXT, "name", UI_STRING, "desc", -1); |
174 UiModel *model = ui_model(obj->ctx, UI_ICON_TEXT, "name", UI_STRING, "desc", -1); |
165 model->getvalue = (ui_getvaluefunc)model_get; |
175 model->getvalue = (ui_getvaluefunc)model_get; |
|
176 model->drop = list_drop; |
|
177 model->data_get = list_data_get; |
166 UiListCallbacks cb = {NULL, NULL, NULL}; |
178 UiListCallbacks cb = {NULL, NULL, NULL}; |
167 ui_table_nv(obj, "list", model, cb); |
179 UIWIDGET table = ui_table_nv(obj, "list", model, cb); |
|
180 ui_table_dragsource(table, 0, "text/plain", NULL); |
168 |
181 |
169 //ui_spinner_setrange(ui_spinnerf_nv(obj, 1, 0, "d"), 0, 1000); |
182 //ui_spinner_setrange(ui_spinnerf_nv(obj, 1, 0, "d"), 0, 1000); |
170 ui_spinnerr_nv(obj, "r"); |
183 ui_spinnerr_nv(obj, "r"); |
171 d1->r->setrange(d1->r, 0, 10); |
184 d1->r->setrange(d1->r, 0, 10); |
172 d1->r->setextent(d1->r, 1); |
185 d1->r->setextent(d1->r, 1); |