application/main.c

changeset 902
6872b59217a7
parent 901
884d70e847a3
child 917
ca3918f9c96b
--- a/application/main.c	Mon Nov 17 11:28:47 2025 +0100
+++ b/application/main.c	Mon Nov 17 14:27:48 2025 +0100
@@ -922,6 +922,8 @@
     UiInteger *spinner;
     UiInteger *tab;
     UiDouble *num;
+    UiInteger *toggle1;
+    UiInteger *toggle2;
 } WData;
 
 
@@ -961,6 +963,12 @@
     ui_set(wdata->tab, index+1);
 }
 
+static void action_menu_toggle(UiEvent *event, void *data) {
+    WData *wdata = event->window;
+    printf("toggle1: %d\n", (int)ui_get(wdata->toggle1));
+    printf("toggle2: %d\n\n", (int)ui_get(wdata->toggle2));
+}
+
 void application_startup(UiEvent *event, void *data) {
     
     menulist = ui_list_new(ui_global_context(), "menulist");
@@ -977,6 +985,8 @@
     wdata->spinner = ui_int_new(obj->ctx, NULL);
     wdata->tab = ui_int_new(obj->ctx, NULL);
     wdata->num = ui_double_new(obj->ctx, "num");
+    wdata->toggle1 = ui_int_new(obj->ctx, "toggle1");
+    wdata->toggle2 = ui_int_new(obj->ctx, "toggle2");
     obj->window = wdata;
     
     ui_list_append(wdata->list, "List Item 1");
@@ -1053,8 +1063,8 @@
         ui_menuitem(.label = "Test 2", .onclick = action_test);
         ui_menuitem(.label = "Test 3", .onclick = action_test);
         ui_menuseparator();
-        ui_menu_toggleitem(.label = "Toggle 1");
-        ui_menu_toggleitem(.label = "Toggle 2");
+        ui_menu_toggleitem(.label = "Toggle 1", .varname = "toggle1", .onchange = action_menu_toggle);
+        ui_menu_toggleitem(.label = "Toggle 2", .varname = "toggle2", .onchange = action_menu_toggle);
         ui_menuseparator();
         ui_menu_radioitem(.label = "Radio 1", .varname = "menu_radio");
         ui_menu_radioitem(.label = "Radio 2", .varname = "menu_radio");

mercurial