comparison wm.h @ 8:7066ff2fe8bc

added key handling
author Anselm R. Garbe <garbeam@wmii.de>
date Tue, 11 Jul 2006 11:50:18 +0200
parents 49e2fc9fb94f
children d567f430a81d
comparison
equal deleted inserted replaced
7:49e2fc9fb94f 8:7066ff2fe8bc
18 18
19 /* rects */ 19 /* rects */
20 enum { RFloat, RGrid, RLast }; 20 enum { RFloat, RGrid, RLast };
21 21
22 typedef struct Client Client; 22 typedef struct Client Client;
23 typedef struct Key Key;
23 24
24 struct Client { 25 struct Client {
25 char name[256]; 26 char name[256];
26 char tag[256]; 27 char tag[256];
27 int proto; 28 int proto;
34 XRectangle r[RLast]; 35 XRectangle r[RLast];
35 Client *next; 36 Client *next;
36 Client *snext; 37 Client *snext;
37 }; 38 };
38 39
40 struct Key {
41 unsigned long mod;
42 KeySym keysym;
43 void (*func)(char *arg);
44 char *arg;
45 };
46
39 extern Display *dpy; 47 extern Display *dpy;
40 extern Window root, barwin; 48 extern Window root, barwin;
41 extern Atom wm_atom[WMLast], net_atom[NetLast]; 49 extern Atom wm_atom[WMLast], net_atom[NetLast];
42 extern Cursor cursor[CurLast]; 50 extern Cursor cursor[CurLast];
43 extern XRectangle rect, barrect; 51 extern XRectangle rect, barrect;
44 extern Bool running; 52 extern Bool running;
45 extern Bool grid; 53 extern Bool grid;
46 extern void (*handler[LASTEvent]) (XEvent *); 54 extern void (*handler[LASTEvent]) (XEvent *);
47 55
48 extern int screen, sel_screen; 56 extern int screen, sel_screen;
49 extern unsigned int lock_mask, numlock_mask;
50 extern char *bartext, tag[256]; 57 extern char *bartext, tag[256];
51 58
52 extern Brush brush; 59 extern Brush brush;
53 extern Client *client; 60 extern Client *client;
54 61
55 /* bar.c */ 62 /* bar.c */
56 extern void draw_bar(); 63 extern void draw_bar();
57 64
65 /* cmd.c */
66 extern void run(char *arg);
67
58 /* client.c */ 68 /* client.c */
59 extern Client *create_client(Window w, XWindowAttributes *wa); 69 extern Client *create_client(Window w, XWindowAttributes *wa);
60 extern void manage(Client *c); 70 extern void manage(Client *c);
61 71
72 /* key.c */
73 extern void update_keys();
74
62 /* wm.c */ 75 /* wm.c */
63 extern int win_proto(Window w); 76 extern int win_proto(Window w);