dwm-meillo
diff dwm.h @ 49:466591c2f967
implemented tagging a client
author | Anselm R. Garbe <garbeam@wmii.de> |
---|---|
date | Thu, 13 Jul 2006 17:09:35 +0200 |
parents | 58307ad56ec1 |
children | 148f25ed0ad7 |
line diff
1.1 --- a/dwm.h Thu Jul 13 14:33:22 2006 +0200 1.2 +++ b/dwm.h Thu Jul 13 17:09:35 2006 +0200 1.3 @@ -22,6 +22,12 @@ 1.4 typedef struct Client Client; 1.5 typedef struct Fnt Fnt; 1.6 typedef struct Key Key; 1.7 +typedef union Arg Arg; 1.8 + 1.9 +union Arg { 1.10 + const char **argv; 1.11 + int i; 1.12 +}; 1.13 1.14 /* atoms */ 1.15 enum { WMProtocols, WMDelete, WMLast }; 1.16 @@ -62,14 +68,14 @@ 1.17 Window trans; 1.18 Window title; 1.19 Client *next; 1.20 - Client *snext; 1.21 + Client *prev; 1.22 }; 1.23 1.24 struct Key { 1.25 unsigned long mod; 1.26 KeySym keysym; 1.27 - void (*func)(void *aux); 1.28 - void *aux; 1.29 + void (*func)(Arg *arg); 1.30 + Arg arg; 1.31 }; 1.32 1.33 extern Display *dpy; 1.34 @@ -83,7 +89,7 @@ 1.35 extern char stext[1024], *tags[TLast]; 1.36 1.37 extern DC dc; 1.38 -extern Client *clients, *stack; 1.39 +extern Client *cstart, *cend, *csel; 1.40 1.41 /* client.c */ 1.42 extern void manage(Window w, XWindowAttributes *wa); 1.43 @@ -97,11 +103,13 @@ 1.44 extern Client *gettitle(Window w); 1.45 extern void craise(Client *c); 1.46 extern void lower(Client *c); 1.47 -extern void ckill(void *aux); 1.48 -extern void sel(void *aux); 1.49 -extern void max(void *aux); 1.50 -extern void floating(void *aux); 1.51 -extern void tiling(void *aux); 1.52 +extern void ckill(Arg *arg); 1.53 +extern void nextc(Arg *arg); 1.54 +extern void prevc(Arg *arg); 1.55 +extern void max(Arg *arg); 1.56 +extern void floating(Arg *arg); 1.57 +extern void tiling(Arg *arg); 1.58 +void tag(Arg *arg); 1.59 extern void gravitate(Client *c, Bool invert); 1.60 1.61 /* draw.c */ 1.62 @@ -125,7 +133,7 @@ 1.63 extern int error_handler(Display *dsply, XErrorEvent *e); 1.64 extern void send_message(Window w, Atom a, long value); 1.65 extern int win_proto(Window w); 1.66 -extern void quit(void *aux); 1.67 +extern void quit(Arg *arg); 1.68 1.69 /* util.c */ 1.70 extern void error(const char *errstr, ...); 1.71 @@ -133,5 +141,5 @@ 1.72 extern void *emalloc(unsigned int size); 1.73 extern void *erealloc(void *ptr, unsigned int size); 1.74 extern char *estrdup(const char *str); 1.75 -extern void spawn(char *argv[]); 1.76 +extern void spawn(Arg *arg); 1.77 extern void swap(void **p1, void **p2);