diff options
author | okan <okan> | 2008-06-14 21:48:54 +0000 |
---|---|---|
committer | okan <okan> | 2008-06-14 21:48:54 +0000 |
commit | bdcbbe7f53ce140df98f06a31dfe5cb19a40d708 (patch) | |
tree | 58a64d48acdfbaca8ec894b89909da5c6d8880f1 /calmwm.h | |
parent | b4ae492b7ba7bf40147c1ad4b8d036aa32053f58 (diff) | |
download | cwm-bdcbbe7f53ce140df98f06a31dfe5cb19a40d708.tar.gz cwm-bdcbbe7f53ce140df98f06a31dfe5cb19a40d708.tar.xz cwm-bdcbbe7f53ce140df98f06a31dfe5cb19a40d708.zip |
confable menu and window mouse bindings from rivo nurges (thanks!) with
some minor fixups, man page bits and knf. ok oga@
Diffstat (limited to 'calmwm.h')
-rw-r--r-- | calmwm.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/calmwm.h b/calmwm.h index 0f84038..67bb1df 100644 --- a/calmwm.h +++ b/calmwm.h @@ -249,8 +249,20 @@ struct cmd { /* (argv) */ }; +struct mousebinding { + int modmask; + int button; + int context; + void (*callback)(struct client_ctx *, void *); + TAILQ_ENTRY(mousebinding) entry; +}; + +#define MOUSEBIND_CTX_ROOT 1 +#define MOUSEBIND_CTX_WIN 2 + TAILQ_HEAD(keybinding_q, keybinding); TAILQ_HEAD(cmd_q, cmd); +TAILQ_HEAD(mousebinding_q, mousebinding); /* Global configuration */ struct conf { @@ -259,6 +271,7 @@ struct conf { struct winmatch_q ignoreq; char conf_path[MAXPATHLEN]; struct cmd_q cmdq; + struct mousebinding_q mousebindingq; #define CONF_STICKY_GROUPS 0x0001 int flags; @@ -424,6 +437,8 @@ void conf_setup(struct conf *, const char *); void conf_client(struct client_ctx *); void conf_bindname(struct conf *, char *, char *); void conf_unbind(struct conf *, struct keybinding *); +void conf_mousebind(struct conf *, char *, char *); +void conf_mouseunbind(struct conf *, struct mousebinding *); int conf_changed(char *); void conf_reload(struct conf *); @@ -450,6 +465,15 @@ void kbfunc_ssh(struct client_ctx *, void *); void kbfunc_term(struct client_ctx *, void *); void kbfunc_lock(struct client_ctx *, void *); +void mousefunc_window_resize(struct client_ctx *, void *); +void mousefunc_window_move(struct client_ctx *, void *); +void mousefunc_window_grouptoggle(struct client_ctx *, + void *); +void mousefunc_window_lower(struct client_ctx *, void *); +void mousefunc_menu_group(struct client_ctx *, void *); +void mousefunc_menu_unhide(struct client_ctx *, void *); +void mousefunc_menu_cmd(struct client_ctx *, void *); + void search_match_client(struct menu_q *, struct menu_q *, char *); void search_print_client(struct menu *, int); |