From 9dacac5e5e6b9ed86e76680b048bc227d8866ac6 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Fri, 22 Jun 2007 03:45:53 +0000 Subject: added the debug action --- openbox/actions/debug.c | 58 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 openbox/actions/debug.c (limited to 'openbox/actions/debug.c') diff --git a/openbox/actions/debug.c b/openbox/actions/debug.c new file mode 100644 index 00000000..f219e059 --- /dev/null +++ b/openbox/actions/debug.c @@ -0,0 +1,58 @@ +#include "openbox/actions.h" +#include + +typedef struct { + gchar *str; +} Options; + +static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node); +static void free_func(gpointer options); +static gboolean run_func(ObActionsData *data, gpointer options); +/* +static gboolean i_input_func(guint initial_state, + XEvent *e, + gpointer options, + gboolean *used); +static void i_cancel_func(gpointer options); +*/ + +void action_debug_startup() +{ + actions_register("Debug", + setup_func, + free_func, + run_func, + NULL, NULL); +} + +static gpointer setup_func(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node) +{ + xmlNodePtr n; + Options *o; + + o = g_new0(Options, 1); + + if ((n = parse_find_node("string", node))) + o->str = parse_string(doc, n); + return o; +} + +static void free_func(gpointer options) +{ + Options *o = options; + + if (o) { + g_free(o->str); + g_free(o); + } +} + +/* Always return FALSE because its not interactive */ +static gboolean run_func(ObActionsData *data, gpointer options) +{ + Options *o = options; + + if (o->str) g_print("%s\n", o->str); + + return FALSE; +} -- cgit v1.2.3