diff options
author | arg@suckless.org <unknown> | 2007-10-17 11:19:14 +0200 |
---|---|---|
committer | arg@suckless.org <unknown> | 2007-10-17 11:19:14 +0200 |
commit | 206eb344e2efcb29922b5b89f7b11f227d701240 (patch) | |
tree | de131b5c5a97da7306981e15eb4a9fcb0e2be4c7 /dwm.h | |
parent | 04de5720e6593cbe0ef31be3e78778fe0f46a774 (diff) | |
download | dwm-206eb344e2efcb29922b5b89f7b11f227d701240.tar.gz |
just making dwm.h saner
Diffstat (limited to 'dwm.h')
-rw-r--r-- | dwm.h | 59 |
1 files changed, 58 insertions, 1 deletions
@@ -1,5 +1,4 @@ /* See LICENSE file for copyright and license details. */ -#include <X11/Xlib.h> /* enums */ enum { BarTop, BarBot, BarOff }; /* bar position */ @@ -53,6 +52,17 @@ typedef struct { void (*arrange)(void); } Layout; +typedef struct { + const char *prop; + const char *tags; + Bool isfloating; +} Rule; + +typedef struct { + regex_t *propregex; + regex_t *tagregex; +} Regs; + /* functions */ void applyrules(Client *c); void arrange(void); @@ -132,3 +142,50 @@ int xerror(Display *dpy, XErrorEvent *ee); int xerrordummy(Display *dsply, XErrorEvent *ee); int xerrorstart(Display *dsply, XErrorEvent *ee); void zoom(const char *arg); + +/* variables */ +char stext[256]; +double mwfact; +int screen, sx, sy, sw, sh, wax, way, waw, wah; +int (*xerrorxlib)(Display *, XErrorEvent *); +unsigned int bh, bpos; +unsigned int blw = 0; +unsigned int ltidx = 0; /* default */ +unsigned int nlayouts = 0; +unsigned int nrules = 0; +unsigned int numlockmask = 0; +void (*handler[LASTEvent]) (XEvent *) = { + [ButtonPress] = buttonpress, + [ConfigureRequest] = configurerequest, + [ConfigureNotify] = configurenotify, + [DestroyNotify] = destroynotify, + [EnterNotify] = enternotify, + [LeaveNotify] = leavenotify, + [Expose] = expose, + [KeyPress] = keypress, + [MappingNotify] = mappingnotify, + [MapRequest] = maprequest, + [PropertyNotify] = propertynotify, + [UnmapNotify] = unmapnotify +}; +Atom wmatom[WMLast], netatom[NetLast]; +Bool otherwm, readin; +Bool running = True; +Bool selscreen = True; +Client *clients = NULL; +Client *sel = NULL; +Client *stack = NULL; +Cursor cursor[CurLast]; +Display *dpy; +DC dc = {0}; +Window barwin, root; +Regs *regs = NULL; + +/* configuration, allows nested code to access above variables */ +#include "config.h" + +/* Statically define the number of tags. */ +unsigned int ntags = sizeof tags / sizeof tags[0]; +Bool seltags[sizeof tags / sizeof tags[0]] = {[0] = True}; +Bool prevtags[sizeof tags / sizeof tags[0]] = {[0] = True}; + |