about summary refs log tree commit diff stats
path: root/dwm.h
diff options
context:
space:
mode:
authorarg@suckless.org <unknown>2007-10-17 11:19:14 +0200
committerarg@suckless.org <unknown>2007-10-17 11:19:14 +0200
commit206eb344e2efcb29922b5b89f7b11f227d701240 (patch)
treede131b5c5a97da7306981e15eb4a9fcb0e2be4c7 /dwm.h
parent04de5720e6593cbe0ef31be3e78778fe0f46a774 (diff)
downloaddwm-206eb344e2efcb29922b5b89f7b11f227d701240.tar.gz
just making dwm.h saner
Diffstat (limited to 'dwm.h')
-rw-r--r--dwm.h59
1 files changed, 58 insertions, 1 deletions
diff --git a/dwm.h b/dwm.h
index ff50d47..526653a 100644
--- a/dwm.h
+++ b/dwm.h
@@ -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};
+