application/main.c

changeset 921
c2b318b93062
parent 919
d9018dcd4e2d
child 936
d40a72210be8
--- a/application/main.c	Wed Nov 19 18:30:53 2025 +0100
+++ b/application/main.c	Thu Nov 20 20:09:00 2025 +0100
@@ -924,6 +924,8 @@
     UiDouble *num;
     UiInteger *toggle1;
     UiInteger *toggle2;
+    
+    UiInteger *checkbox1;
 } WData;
 
 
@@ -969,6 +971,15 @@
     printf("toggle2: %d\n\n", (int)ui_get(wdata->toggle2));
 }
 
+static void action_show_button1(UiEvent *event, void *data) {
+    WData *wdata = event->window;
+    if(event->intval) {
+        ui_set_group(event->obj->ctx, 10);
+    } else {
+        ui_unset_group(event->obj->ctx, 10);
+    }
+}
+
 void application_startup(UiEvent *event, void *data) {
     
     menulist = ui_list_new(ui_global_context(), "menulist");
@@ -987,6 +998,7 @@
     wdata->num = ui_double_new(obj->ctx, "num");
     wdata->toggle1 = ui_int_new(obj->ctx, "toggle1");
     wdata->toggle2 = ui_int_new(obj->ctx, "toggle2");
+    wdata->checkbox1 = ui_int_new(obj->ctx, NULL);
     obj->window = wdata;
     
     ui_list_append(wdata->list, "List Item 1");
@@ -1007,42 +1019,25 @@
     */
     
     ui_button(obj, .label = "Next Tab", .onclick = action_next_tab);
-    ui_tabview_w(obj, wdata->tabview, .value = wdata->tab, .fill = UI_ON) {
+    ui_tabview_w(obj, wdata->tabview, .value = wdata->tab, .fill = UI_ON) {  
         ui_tab(obj, "Tab 1") {
-            ui_textarea(obj, .varname = "text", .fill = UI_ON);
+            ui_vbox(obj, .margin = 10, .spacing = 10) {
+                UIWIDGET w = ui_button(obj, .label = "Button 1");
+                int state = 10;
+                ui_widget_set_visibility_states(obj->ctx, w, &state, 1);
+                ui_button(obj, .label = "Button 2");
+                ui_checkbox(obj, .label = "Hide Button 1", .value = wdata->checkbox1, .onchange = action_show_button1);
+            }
         }
         
         ui_tab(obj, "Tab 2") {
-            ui_combobox(obj, .list = wdata->list);
-            ui_label(obj, .label = "Test");
-            ui_separator(obj, .name = "s1");
-        }
-        
-        ui_tab(obj, "Tab 3") {
-            ui_button(obj, .label = "Test Tab 3", .onclick = action_remove_tab3);
-        }
-        
-        ui_tab(obj, "Tab 4") {
-            ui_grid(obj, .margin = 10) {
-                ui_spinbox(obj, .varname = "num");
-            }
-        }
-        
-        ui_tab(obj, "Tab 5") {
-            ui_grid(obj, .margin = 0, .columnspacing = 10, .rowspacing = 10) {
-                ui_button(obj, .label = "Button");
-                ui_button(obj, .label = "Button");
-                ui_button(obj, .label = "Button");
-                ui_newline(obj);
-                
-                for(int i=0;i<10;i++) {
-                    ui_button(obj, .label = "Margin", .margin_left = 2*i);
-                    ui_newline(obj);
-                }
-            }
+            
         }
     }
     
+    ui_set(wdata->checkbox1, 1);
+    ui_set_group(obj->ctx, 10);
+    
     
     ui_show(obj);
     

mercurial