application/main.c

changeset 1092
0accf125a65f
parent 1060
74bed80a0503
--- a/application/main.c	Thu Apr 16 17:41:35 2026 +0200
+++ b/application/main.c	Fri Apr 17 13:21:11 2026 +0200
@@ -309,9 +309,16 @@
     ui_show(obj);
 }
 
+static void mydoc_action_save(UiEvent *event, void *data) {
+    printf("mydoc action save\n");
+    
+}
+
+
 MyDocument* create_doc(void) {
     MyDocument *doc = ui_document_new(sizeof(MyDocument));
     UiContext *docctx = ui_document_context(doc);
+    ui_add_action(docctx, "save", mydoc_action_save, NULL);
     doc->submenulist = ui_list_new(docctx, "sub_menulist");
     ui_list_append(doc->submenulist, "Sub Menu List Item 1");
     ui_list_append(doc->submenulist, "Sub Menu List Item 2");
@@ -631,9 +638,14 @@
     ui_var_set_int(event->obj->ctx, "menu_radio", 5);
 }
 
+static void global_action_save(UiEvent *event, void *data) {
+    printf("global save\n");
+}
+
 void application_startup(UiEvent *event, void *data) {
     // global list
     UiContext *global = ui_global_context();
+    ui_add_action(global, "save", global_action_save, NULL);
     menu_list = ui_list_new(global, "menulist");
     ui_list_append(menu_list, "menu list item 1");
     ui_list_append(menu_list, "menu list item 2");
@@ -920,7 +932,7 @@
     ui_toolbar_appmenu() {
         ui_menuitem("New");
         ui_menuitem("Open");
-        ui_menuitem("Save");
+        ui_menuitem("Save", .action = "save");
         
         ui_menuseparator();
         ui_menu_radioitem(.label = "Option 1", .varname = "menu_radio", .onchange = action_menu_radio);

mercurial