X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Factions.h;h=f413ad8284386389015d07d43197a42ae8ad8e68;hb=c1d21a1a6d88189ab3c5569b2b776d846bb6c11a;hp=94fc15cb8941af6eaf505264033236aa1befd6e3;hpb=a03b817aeb7fe32be881c30d50fab79455db08c5;p=chaz%2Fopenbox diff --git a/openbox/actions.h b/openbox/actions.h index 94fc15cb..f413ad82 100644 --- a/openbox/actions.h +++ b/openbox/actions.h @@ -18,7 +18,8 @@ #include "misc.h" #include "frame.h" -#include "obt/parse.h" +#include "obt/xml.h" +#include "obt/keyboard.h" #include #include @@ -35,6 +36,7 @@ typedef void (*ObActionsDataFreeFunc)(gpointer options); typedef gboolean (*ObActionsRunFunc)(ObActionsData *data, gpointer options); typedef gpointer (*ObActionsDataSetupFunc)(xmlNodePtr node); +typedef void (*ObActionsShutdownFunc)(void); /* functions for interactive actions */ /* return TRUE if the action is going to be interactive, or false to change @@ -42,9 +44,10 @@ typedef gpointer (*ObActionsDataSetupFunc)(xmlNodePtr node); typedef gboolean (*ObActionsIPreFunc)(guint initial_state, gpointer options); typedef void (*ObActionsIPostFunc)(gpointer options); typedef gboolean (*ObActionsIInputFunc)(guint initial_state, - XEvent *e, - gpointer options, - gboolean *used); + XEvent *e, + ObtIC *ic, + gpointer options, + gboolean *used); typedef void (*ObActionsICancelFunc)(gpointer options); typedef gpointer (*ObActionsIDataSetupFunc)(xmlNodePtr node, ObActionsIPreFunc *pre, @@ -77,6 +80,11 @@ gboolean actions_register(const gchar *name, ObActionsDataFreeFunc free, ObActionsRunFunc run); +gboolean actions_set_shutdown(const gchar *name, + ObActionsShutdownFunc shutdown); +gboolean actions_set_modifies_focused_window(const gchar *name, + gboolean modifies); + ObActionsAct* actions_parse(xmlNodePtr node); ObActionsAct* actions_parse_string(const gchar *name);