application/window.c

changeset 115
e57ca2747782
parent 111
81c4f73236a4
--- a/application/window.c	Sun Dec 07 20:00:33 2025 +0100
+++ b/application/window.c	Sat Dec 13 15:58:58 2025 +0100
@@ -52,25 +52,25 @@
     
     // initialize the browser context menu
     ui_contextmenu(&contextmenu) {
-        ui_menuitem(.label = "New Folder", .onclick = action_mkcol, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION));
-        ui_menuitem(.label = "New File", .onclick = action_newfile, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION));
+        ui_menuitem(.label = "New Folder", .onclick = action_mkcol, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION));
+        ui_menuitem(.label = "New File", .onclick = action_newfile, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION));
         ui_menuseparator();
-        //ui_menuitem(.label = "Cut", .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
-        //ui_menuitem(.label = "Copy", .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
-        //ui_menuitem(.label = "Paste", .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
-        ui_menuitem(.label = "Download", .onclick = action_download, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
-        ui_menuitem(.label = "Delete", .onclick = action_delete, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION));
-        ui_menuitem(.label = "Select All", .onclick = action_selectall, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION));
+        //ui_menuitem(.label = "Cut", .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
+        //ui_menuitem(.label = "Copy", .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
+        //ui_menuitem(.label = "Paste", .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
+        ui_menuitem(.label = "Download", .onclick = action_download, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
+        ui_menuitem(.label = "Delete", .onclick = action_delete, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION));
+        ui_menuitem(.label = "Select All", .onclick = action_selectall, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION));
         ui_menuseparator();
-        ui_menuitem(.label = "Rename", .onclick = action_rename, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
+        ui_menuitem(.label = "Rename", .onclick = action_rename, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
         ui_menuseparator();
-        ui_menuitem("Open Properties", .onclick = action_open_properties, .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
-        ui_menuitem("Open as Text File", .onclick = action_open_properties, .onclickdata = "text/plain", .groups = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
+        ui_menuitem("Open Properties", .onclick = action_open_properties, .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
+        ui_menuitem("Open as Text File", .onclick = action_open_properties, .onclickdata = "text/plain", .states = UI_GROUPS(APP_STATE_BROWSER_SESSION, APP_STATE_BROWSER_SELECTION));
     }
 }
 
 UiObject* window_create(void) {
-    UiObject* obj = ui_window("iDAV", NULL);
+    UiObject* obj = ui_window("iDAV");
     ui_window_size(obj, 900, 700);
 
     MainWindow* wdata = ui_malloc(obj->ctx, sizeof (MainWindow));
@@ -186,12 +186,12 @@
 
 void resourceviewer_new(DavBrowser *browser, const char *path, DavResourceViewType type) {
     const char *name = util_resource_name(path);
-    UiObject *win = ui_simple_window(name, NULL);
+    UiObject *win = ui_simple_window(name);
     ui_window_size(win, 600, 600);
     
     ui_headerbar(win, .showtitle = TRUE) {
         ui_headerbar_start(win) {
-            ui_button(win, .label = "Save", .onclick = action_resourceviewer_save, .groups = UI_GROUPS(RESOURCEVIEWER_STATE_MODIFIED));
+            ui_button(win, .label = "Save", .onclick = action_resourceviewer_save, .states = UI_GROUPS(RESOURCEVIEWER_STATE_MODIFIED));
         }
     }
     
@@ -264,8 +264,8 @@
                             .onactivate = action_resourceviewer_property_activate);
                     ui_hbox(win, .margin = 4, .spacing = 4) {
                         ui_button(win, .label = "Add", .onclick = action_resourceviewer_property_add);
-                        ui_button(win, .label = "Edit", .onclick = action_resourceviewer_property_edit, .groups = UI_GROUPS(RESOURCEVIEWER_STATE_PROP_SELECTED));
-                        ui_button(win, .label = "Remove", .onclick = action_resourceviewer_property_remove, .groups = UI_GROUPS(RESOURCEVIEWER_STATE_PROP_SELECTED));
+                        ui_button(win, .label = "Edit", .onclick = action_resourceviewer_property_edit, .states = UI_GROUPS(RESOURCEVIEWER_STATE_PROP_SELECTED));
+                        ui_button(win, .label = "Remove", .onclick = action_resourceviewer_property_remove, .states = UI_GROUPS(RESOURCEVIEWER_STATE_PROP_SELECTED));
                     }
                 }
             }
@@ -485,9 +485,9 @@
 void action_list_selection(UiEvent *event, void *data) {
     UiListSelection *selection = event->eventdata;
     if (selection->count > 0) {
-        ui_set_group(event->obj->ctx, APP_STATE_BROWSER_SELECTION);
+        ui_set_state(event->obj->ctx, APP_STATE_BROWSER_SELECTION);
     } else {
-        ui_unset_group(event->obj->ctx, APP_STATE_BROWSER_SELECTION);
+        ui_unset_state(event->obj->ctx, APP_STATE_BROWSER_SELECTION);
     }
 }
 
@@ -548,7 +548,7 @@
 void action_resourceviewer_text_modified(UiEvent *event, void *data) {
     DavResourceViewer *doc = event->document;
     if(doc->loaded) {
-        ui_set_group(event->obj->ctx, RESOURCEVIEWER_STATE_MODIFIED);
+        ui_set_state(event->obj->ctx, RESOURCEVIEWER_STATE_MODIFIED);
     }
 }
 
@@ -561,10 +561,10 @@
     DavResourceViewer *doc = event->document;
     UiListSelection *selection = event->eventdata;
     if(selection->count == 1) {
-        ui_set_group(event->obj->ctx, RESOURCEVIEWER_STATE_PROP_SELECTED);
+        ui_set_state(event->obj->ctx, RESOURCEVIEWER_STATE_PROP_SELECTED);
         doc->selected_property = ui_list_get(doc->properties, selection->rows[0]);
     } else {
-        ui_unset_group(event->obj->ctx, RESOURCEVIEWER_STATE_PROP_SELECTED);
+        ui_unset_state(event->obj->ctx, RESOURCEVIEWER_STATE_PROP_SELECTED);
         doc->selected_property = NULL;
     }
 }
@@ -641,11 +641,11 @@
     DavResourceViewer *res = data;
     switch(ui_get(res->property_type)) {
         case 0: {
-            ui_unset_group(event->obj->ctx, RESOURCEVIEWER_STATE_PROP_XML);
+            ui_unset_state(event->obj->ctx, RESOURCEVIEWER_STATE_PROP_XML);
             break;
         }
         case 1: {
-            ui_set_group(event->obj->ctx, RESOURCEVIEWER_STATE_PROP_XML);
+            ui_set_state(event->obj->ctx, RESOURCEVIEWER_STATE_PROP_XML);
             char *ns = ui_get(res->property_ns);
             char *nsdef = ui_get(res->property_nsdef);
             if(strlen(nsdef) == 0) {
@@ -690,7 +690,7 @@
         ui_newline(obj);
         
         ui_llabel(obj, .label = "Namespace Declarations");
-        ui_textfield(obj, .hexpand = TRUE, .value = res->property_nsdef, .groups = UI_GROUPS(RESOURCEVIEWER_STATE_PROP_XML));
+        ui_textfield(obj, .hexpand = TRUE, .value = res->property_nsdef, .states = UI_GROUPS(RESOURCEVIEWER_STATE_PROP_XML));
         ui_newline(obj);
         
         ui_textarea(obj, .value = res->property_value, .hexpand = TRUE, .vexpand = TRUE, .colspan = 2);
@@ -706,7 +706,7 @@
             ui_set(res->property_type, 0);
             ui_set(res->property_nsdef, "");
             ui_set(res->property_value, prop->value_full);
-            ui_unset_group(obj->ctx, RESOURCEVIEWER_STATE_PROP_XML);
+            ui_unset_state(obj->ctx, RESOURCEVIEWER_STATE_PROP_XML);
         } else if(prop->xml) {
             ui_set(res->property_type, 1);
             cxmutstr xml;
@@ -716,7 +716,7 @@
             ui_set(res->property_value, xml.ptr);
             free(xml.ptr);
             free(nsdef.ptr);
-            ui_set_group(obj->ctx, RESOURCEVIEWER_STATE_PROP_XML);
+            ui_set_state(obj->ctx, RESOURCEVIEWER_STATE_PROP_XML);
         }
     } else {
         ui_set(res->property_ns, "");

mercurial