labwc/include/action.h
2022-07-04 18:04:19 +02:00

26 lines
840 B
C

/* SPDX-License-Identifier: GPL-2.0-only */
#ifndef __LABWC_ACTION_H
#define __LABWC_ACTION_H
struct view;
struct server;
struct wl_list;
struct wlr_fbox;
struct action {
struct wl_list link; /* struct keybinding.actions,
* struct mousebinding.actions,
* struct menuitem.actions */
uint32_t type; /* enum action_type */
struct wl_list args; /* struct action_arg.link */
};
struct action *action_create(const char *action_name);
void action_arg_add_str(struct action *action, char *key, const char *value);
struct wlr_fbox *action_arg_add_fbox(struct action *action, char *name);
void actions_run(struct view *activator, struct server *server,
struct wl_list *actions, uint32_t resize_edges);
void action_list_free(struct wl_list *action_list);
#endif /* __LABWC_ACTION_H */