aboutsummaryrefslogtreecommitdiff
path: root/sys/cmd/dwm/dwm.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/cmd/dwm/dwm.h')
-rw-r--r--sys/cmd/dwm/dwm.h53
1 files changed, 31 insertions, 22 deletions
diff --git a/sys/cmd/dwm/dwm.h b/sys/cmd/dwm/dwm.h
index 71d7e6c..d8bfbb3 100644
--- a/sys/cmd/dwm/dwm.h
+++ b/sys/cmd/dwm/dwm.h
@@ -129,7 +129,7 @@ struct Client {
Client *next;
Client *snext;
Monitor *mon;
- Window win;
+ Window win;
};
struct Key {
@@ -152,6 +152,7 @@ struct Monitor {
int by; /* bar geometry */
int mx, my, mw, mh; /* screen size */
int wx, wy, ww, wh; /* window area */
+ int gapx; /* gaps */
uint seltags;
uint sellt;
uint tagset[2];
@@ -175,30 +176,32 @@ struct Rule {
};
/* draw.c */
-
typedef struct {
- Cursor cursor;
+ union {
+ Cursor;
+ Cursor cursor;
+ };
} Cur;
typedef struct Fnt {
- Display *dpy;
- unsigned int h;
- XftFont *xfont;
+ Display *dpy;
+ uint h;
+ XftFont *xfont;
FcPattern *pattern;
struct Fnt *next;
} Fnt;
-typedef XftColor Clr;
+typedef XftColor Color;
typedef struct {
- unsigned int w, h;
+ uint w, h;
Display *dpy;
int screen;
Window root;
Drawable drawable;
GC gc;
- Clr *scheme;
- Fnt *fonts;
+ Color *scheme;
+ Font *fonts;
} Drw;
/* global state */
@@ -211,11 +214,12 @@ extern int bh, blw;
extern int lrpad;
extern int (*xerrorxlib)(Display *, XErrorEvent *);
extern uint numlockmask;
+extern void (*handler[LASTEvent]) (XEvent *);
extern Atom wmatom[WMLast], netatom[NetLast];
extern int running;
extern Cur *cursor[MouseLast];
-extern Clr **scheme;
+extern Color **scheme;
extern Display *dpy;
extern Drw *drw;
extern Monitor *mons, *selmon;
@@ -224,12 +228,15 @@ extern Window root, wmcheckwin;
// -----------------------------------------------------------------------
// function declarations
+// TODO: remove declarations that don't require global existence...
void applyrules(Client *c);
int applysizehints(Client *c, int *x, int *y, int *w, int *h, int interact);
void arrange(Monitor *m);
void arrangemon(Monitor *m);
void attach(Client *c);
+void enqueue(Client *c);
void attachstack(Client *c);
+void enqueuestack(Client *c);
void buttonpress(XEvent *e);
void checkotherwm(void);
void cleanup(void);
@@ -251,6 +258,7 @@ void focus(Client *c);
void focusin(XEvent *e);
void focusmon(Arg *arg);
void focusstack(Arg *arg);
+void rotatestack(Arg *arg);
Atom getatomprop(Client *c, Atom prop);
int getrootptr(int *x, int *y);
long getstate(Window w);
@@ -293,6 +301,7 @@ void tag(Arg *arg);
void tagmon(Arg *arg);
void tile(Monitor *);
void togglebar(Arg *arg);
+void togglefocus(Arg *arg);
void togglefloating(Arg *arg);
void toggletag(Arg *arg);
void toggleview(Arg *arg);
@@ -322,19 +331,19 @@ void zoom(Arg *arg);
/* draw.c */
/* Drawable abstraction */
-Drw *drw_create(Display *dpy, int screen, Window win, unsigned int w, unsigned int h);
-void drw_resize(Drw *drw, unsigned int w, unsigned int h);
+Drw *drw_create(Display *dpy, int screen, Window win, uint w, uint h);
+void drw_resize(Drw *drw, uint w, uint h);
void drw_free(Drw *drw);
/* Fnt abstraction */
Fnt *drw_fontset_create(Drw* drw, char *fonts[], size_t fontcount);
void drw_fontset_free(Fnt* set);
-unsigned int drw_fontset_getwidth(Drw *drw, char *text);
-void drw_font_getexts(Fnt *font, char *text, unsigned int len, unsigned int *w, unsigned int *h);
+uint drw_fontset_getwidth(Drw *drw, char *text);
+void drw_font_getexts(Fnt *font, char *text, uint len, uint *w, uint *h);
/* Colorscheme abstraction */
-void drw_clr_create(Drw *drw, Clr *dest, char *clrname);
-Clr *drw_scm_create(Drw *drw, char *clrnames[], size_t clrcount);
+void drw_clr_create(Drw *drw, Color *dest, char *clrname);
+Color *drw_scm_create(Drw *drw, char *clrnames[], size_t clrcount);
/* Cursor abstraction */
Cur *drw_cur_create(Drw *drw, int shape);
@@ -342,15 +351,15 @@ void drw_cur_free(Drw *drw, Cur *cursor);
/* Drawing context manipulation */
void drw_setfontset(Drw *drw, Fnt *set);
-void drw_setscheme(Drw *drw, Clr *scm);
+void drw_setscheme(Drw *drw, Color *scm);
/* Drawing functions */
-void drw_rect(Drw *drw, int x, int y, unsigned int w, unsigned int h, int filled, int invert);
-int drw_text(Drw *drw, int x, int y, unsigned int w, unsigned int h, unsigned int lpad, char *text, int invert);
+void drw_rect(Drw *drw, int x, int y, uint w, uint h, int filled, int invert);
+int drw_text(Drw *drw, int x, int y, uint w, uint h, uint lpad, char *text, int invert);
/* Map functions */
-void drw_map(Drw *drw, Window win, int x, int y, unsigned int w, unsigned int h);
+void drw_map(Drw *drw, Window win, int x, int y, uint w, uint h);
/* util.c */
-void fatal(char *fmt, ...);
+void fatal(char *fmt, ...);
void *ecalloc(size_t nmemb, size_t size);