create actions from string names
This commit is contained in:
parent
91ebde9e88
commit
9eeb13ec71
2 changed files with 11 additions and 0 deletions
|
@ -98,6 +98,8 @@ Action *action_from_string(char *name)
|
||||||
a = action_new(action_send_to_previous_desktop);
|
a = action_new(action_send_to_previous_desktop);
|
||||||
a->data.sendtonextprev.wrap = TRUE;
|
a->data.sendtonextprev.wrap = TRUE;
|
||||||
a->data.sendtonextprev.follow = TRUE;
|
a->data.sendtonextprev.follow = TRUE;
|
||||||
|
} else if (!g_ascii_strcasecmp(name, "desktop")) {
|
||||||
|
a = action_new(action_desktop);
|
||||||
} else if (!g_ascii_strcasecmp(name, "nextdesktop")) {
|
} else if (!g_ascii_strcasecmp(name, "nextdesktop")) {
|
||||||
a = action_new(action_next_desktop);
|
a = action_new(action_next_desktop);
|
||||||
a->data.nextprevdesktop.wrap = FALSE;
|
a->data.nextprevdesktop.wrap = FALSE;
|
||||||
|
|
|
@ -85,6 +85,15 @@ typedef struct {
|
||||||
} Action;
|
} Action;
|
||||||
|
|
||||||
Action *action_new(void (*func)(union ActionData *data));
|
Action *action_new(void (*func)(union ActionData *data));
|
||||||
|
|
||||||
|
/* Creates a new Action from the name of the action
|
||||||
|
A few action types need data set after making this call still. Check if
|
||||||
|
the returned action's "func" is one of these.
|
||||||
|
action_execute - the path needs to be set
|
||||||
|
action_restart - the path can optionally be set
|
||||||
|
action_desktop - the destination desktop needs to be set
|
||||||
|
*/
|
||||||
|
Action *action_from_string(char *name);
|
||||||
void action_free(Action *a);
|
void action_free(Action *a);
|
||||||
|
|
||||||
/* Execute */
|
/* Execute */
|
||||||
|
|
Loading…
Reference in a new issue