ui/common/action.c

changeset 1196
296b8b6eaae6
parent 1184
2436f03c8aca
equal deleted inserted replaced
1195:6ec3c71ba298 1196:296b8b6eaae6
225 225
226 void ui_broadcast_action2(const char *action_name, void *eventdata, int intval) { 226 void ui_broadcast_action2(const char *action_name, void *eventdata, int intval) {
227 broadcast_action(action_name, eventdata, UI_EVENT_DATA_POINTER, intval); 227 broadcast_action(action_name, eventdata, UI_EVENT_DATA_POINTER, intval);
228 } 228 }
229 229
230 void ui_call_action_on(UiContext *ctx, const char *action) {
231 UiEvent event;
232 memset(&event, 0, sizeof(UiEvent));
233 event.obj = ctx->obj;
234 event.window = event.obj ? event.obj->window : NULL;
235 event.document = ctx->self_doc ? ctx->self_doc : ctx->document;
236
237 UiAction *a = NULL;
238 if(ctx->actions) {
239 a = cxMapGet(ctx->actions, action);
240 }
241 if(a && a->callback) {
242 a->callback(&event, a->userdata);
243 }
244 }
245
230 typedef struct UiActionBroadcast { 246 typedef struct UiActionBroadcast {
231 char *action; 247 char *action;
232 void *eventdata; 248 void *eventdata;
233 UiEventType eventdatataype; 249 UiEventType eventdatataype;
234 int intval; 250 int intval;

mercurial