ui/common/action.c

changeset 1196
296b8b6eaae6
parent 1184
2436f03c8aca
--- a/ui/common/action.c	Sat Jun 13 17:08:09 2026 +0200
+++ b/ui/common/action.c	Sat Jun 13 17:19:59 2026 +0200
@@ -227,6 +227,22 @@
     broadcast_action(action_name, eventdata, UI_EVENT_DATA_POINTER, intval);
 }
 
+void ui_call_action_on(UiContext *ctx, const char *action) {
+    UiEvent event;
+    memset(&event, 0, sizeof(UiEvent));
+    event.obj = ctx->obj;
+    event.window = event.obj ? event.obj->window : NULL;
+    event.document = ctx->self_doc ? ctx->self_doc : ctx->document;
+    
+    UiAction *a = NULL;
+    if(ctx->actions) {
+        a = cxMapGet(ctx->actions, action);
+    }
+    if(a && a->callback) {
+        a->callback(&event, a->userdata);
+    }
+}
+
 typedef struct UiActionBroadcast {
     char *action;
     void *eventdata;

mercurial