diff -r 7032f69a325c -r 6fdec085c385 application/main.c --- a/application/main.c Wed Aug 20 16:59:53 2025 +0200 +++ b/application/main.c Fri Aug 22 10:10:22 2025 +0200 @@ -198,6 +198,7 @@ UiList *items; UiGeneric *web; UiString *list_input; + UiList *list11; } MyDocument; MyDocument *doc1; @@ -336,6 +337,11 @@ doc->list_input = ui_string_new(docctx, "list_input"); + doc->list11 = ui_list_new(docctx, "list11"); + ui_list_append(doc->list11, "Item 1"); + ui_list_append(doc->list11, "Item 2"); + ui_list_append(doc->list11, "Item 3"); + //doc->text = ui_text_new(docctx, "text"); return doc; } @@ -505,6 +511,20 @@ doc->list2->update(doc->list2, 1); } +static void action_list_selection(UiEvent *event, void *userdata) { + UiListSelection *sel = event->eventdata; + printf("list selection[%d]\n", sel->count); + for(int i=0;icount;i++) { + printf("[%d]: %d\n", i, sel->rows[i]); + } + printf("\n"); +} + +static void action_list_activate(UiEvent *event, void *userdata) { + printf("activate\n"); + action_list_selection(event, userdata); +} + void application_startup(UiEvent *event, void *data) { // global list UiContext *global = ui_global_context(); @@ -681,6 +701,11 @@ ui_newline(obj); } } + ui_tab(obj, "Tab 11") { + ui_grid(obj, .margin = 10, .rowspacing = 10, .columnspacing = 10, .fill = TRUE) { + ui_listview(obj, .varname = "list11", .multiselection = FALSE, .onselection = action_list_selection, .onactivate = action_list_activate, .hexpand = TRUE, .hfill = TRUE, .vexpand = TRUE, .vfill = TRUE); + } + } } /*