Mercurial > dwm-meillo
comparison event.c @ 146:f328ce9c558c
centralized/externalized configuration to config.h
author | arg@10ksloc.org |
---|---|
date | Tue, 01 Aug 2006 13:59:13 +0200 |
parents | 774754477c35 |
children | 5267e1204367 |
comparison
equal
deleted
inserted
replaced
145:774754477c35 | 146:f328ce9c558c |
---|---|
6 | 6 |
7 #include <stdlib.h> | 7 #include <stdlib.h> |
8 #include <X11/keysym.h> | 8 #include <X11/keysym.h> |
9 #include <X11/Xatom.h> | 9 #include <X11/Xatom.h> |
10 | 10 |
11 /* CUSTOMIZE */ | 11 /* static */ |
12 | 12 |
13 typedef struct { | 13 typedef struct { |
14 unsigned long mod; | 14 unsigned long mod; |
15 KeySym keysym; | 15 KeySym keysym; |
16 void (*func)(Arg *arg); | 16 void (*func)(Arg *arg); |
17 Arg arg; | 17 Arg arg; |
18 } Key; | 18 } Key; |
19 | 19 |
20 const char *browse[] = { "firefox", NULL }; | 20 CMDS |
21 const char *gimp[] = { "gimp", NULL }; | 21 KEYS |
22 const char *term[] = { /*"xterm", NULL };*/ | 22 |
23 "urxvt", "-tr", "+sb", "-bg", "black", "-fg", "white", "-cr", "white", | 23 static unsigned int valid_mask = 255 & ~(NUMLOCKMASK | LockMask); |
24 "-fn", "-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*", NULL | |
25 }; | |
26 const char *xlock[] = { "xlock", NULL }; | |
27 | |
28 static Key key[] = { | |
29 /* modifier key function arguments */ | |
30 { MODKEY, XK_0, view, { .i = Tfnord } }, | |
31 { MODKEY, XK_1, view, { .i = Tdev } }, | |
32 { MODKEY, XK_2, view, { .i = Tnet } }, | |
33 { MODKEY, XK_3, view, { .i = Twork } }, | |
34 { MODKEY, XK_4, view, { .i = Tmisc} }, | |
35 { MODKEY, XK_h, viewprev, { 0 } }, | |
36 { MODKEY, XK_j, focusnext, { 0 } }, | |
37 { MODKEY, XK_k, focusprev, { 0 } }, | |
38 { MODKEY, XK_l, viewnext, { 0 } }, | |
39 { MODKEY, XK_m, togglemax, { 0 } }, | |
40 { MODKEY, XK_space, togglemode, { 0 } }, | |
41 { MODKEY, XK_Return, zoom, { 0 } }, | |
42 { MODKEY|ControlMask, XK_0, appendtag, { .i = Tfnord } }, | |
43 { MODKEY|ControlMask, XK_1, appendtag, { .i = Tdev } }, | |
44 { MODKEY|ControlMask, XK_2, appendtag, { .i = Tnet } }, | |
45 { MODKEY|ControlMask, XK_3, appendtag, { .i = Twork } }, | |
46 { MODKEY|ControlMask, XK_4, appendtag, { .i = Tmisc } }, | |
47 { MODKEY|ShiftMask, XK_0, replacetag, { .i = Tfnord } }, | |
48 { MODKEY|ShiftMask, XK_1, replacetag, { .i = Tdev } }, | |
49 { MODKEY|ShiftMask, XK_2, replacetag, { .i = Tnet } }, | |
50 { MODKEY|ShiftMask, XK_3, replacetag, { .i = Twork } }, | |
51 { MODKEY|ShiftMask, XK_4, replacetag, { .i = Tmisc } }, | |
52 { MODKEY|ShiftMask, XK_c, killclient, { 0 } }, | |
53 { MODKEY|ShiftMask, XK_q, quit, { 0 } }, | |
54 { MODKEY|ShiftMask, XK_Return, spawn, { .argv = term } }, | |
55 { MODKEY|ShiftMask, XK_g, spawn, { .argv = gimp } }, | |
56 { MODKEY|ShiftMask, XK_l, spawn, { .argv = xlock } }, | |
57 { MODKEY|ShiftMask, XK_w, spawn, { .argv = browse } }, | |
58 }; | |
59 | |
60 #define NumLockMask Mod2Mask | |
61 unsigned int valid_mask = 255 & ~( NumLockMask | LockMask); | |
62 | |
63 /* END CUSTOMIZE */ | |
64 | |
65 /* static */ | |
66 | 24 |
67 static void | 25 static void |
68 movemouse(Client *c) | 26 movemouse(Client *c) |
69 { | 27 { |
70 int x1, y1, ocx, ocy, di; | 28 int x1, y1, ocx, ocy, di; |
379 KeyCode code; | 337 KeyCode code; |
380 | 338 |
381 for(i = 0; i < len; i++) { | 339 for(i = 0; i < len; i++) { |
382 code = XKeysymToKeycode(dpy, key[i].keysym); | 340 code = XKeysymToKeycode(dpy, key[i].keysym); |
383 XUngrabKey(dpy, code, key[i].mod, root); | 341 XUngrabKey(dpy, code, key[i].mod, root); |
384 if (NumLockMask) | 342 XUngrabKey(dpy, code, key[i].mod | NUMLOCKMASK, root); |
385 { | 343 XUngrabKey(dpy, code, key[i].mod | NUMLOCKMASK | LockMask, root); |
386 XUngrabKey(dpy, code, key[i].mod | NumLockMask, root); | |
387 XUngrabKey(dpy, code, key[i].mod | NumLockMask | LockMask, root); | |
388 } | |
389 XGrabKey(dpy, code, key[i].mod, root, True, | 344 XGrabKey(dpy, code, key[i].mod, root, True, |
390 GrabModeAsync, GrabModeAsync); | 345 GrabModeAsync, GrabModeAsync); |
391 if (NumLockMask) | 346 XGrabKey(dpy, code, key[i].mod | NUMLOCKMASK, root, True, |
392 { | 347 GrabModeAsync, GrabModeAsync); |
393 XGrabKey(dpy, code, key[i].mod | NumLockMask, root, True, | 348 XGrabKey(dpy, code, key[i].mod | NUMLOCKMASK | LockMask, root, True, |
394 GrabModeAsync, GrabModeAsync); | 349 GrabModeAsync, GrabModeAsync); |
395 XGrabKey(dpy, code, key[i].mod | NumLockMask | LockMask, root, True, | 350 } |
396 GrabModeAsync, GrabModeAsync); | 351 } |
397 } | |
398 } | |
399 } |