1
0

reverted uint redefinition

This commit is contained in:
Anselm R Garbe 2008-07-16 18:17:42 +01:00
parent 9aa4a9043d
commit 9086f98068

88
dwm.c
View File

@ -63,21 +63,17 @@ enum { WMProtocols, WMDelete, WMName, WMState, WMLast };/* default atoms */
enum { ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, enum { ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle,
ClkClientWin, ClkRootWin, ClkLast }; /* clicks */ ClkClientWin, ClkRootWin, ClkLast }; /* clicks */
/* typedefs */
typedef unsigned int uint;
typedef unsigned long ulong;
typedef union { typedef union {
int i; int i;
uint ui; unsigned int ui;
float f; float f;
void *v; void *v;
} Arg; } Arg;
typedef struct { typedef struct {
uint click; unsigned int click;
uint mask; unsigned int mask;
uint button; unsigned int button;
void (*func)(const Arg *arg); void (*func)(const Arg *arg);
const Arg arg; const Arg arg;
} Button; } Button;
@ -89,7 +85,7 @@ struct Client {
int x, y, w, h; int x, y, w, h;
int basew, baseh, incw, inch, maxw, maxh, minw, minh; int basew, baseh, incw, inch, maxw, maxh, minw, minh;
int bw, oldbw; int bw, oldbw;
uint tags; unsigned int tags;
Bool isfixed, isfloating, isurgent; Bool isfixed, isfloating, isurgent;
Client *next; Client *next;
Client *snext; Client *snext;
@ -98,8 +94,8 @@ struct Client {
typedef struct { typedef struct {
int x, y, w, h; int x, y, w, h;
ulong norm[ColLast]; unsigned long norm[ColLast];
ulong sel[ColLast]; unsigned long sel[ColLast];
Drawable drawable; Drawable drawable;
GC gc; GC gc;
struct { struct {
@ -112,7 +108,7 @@ typedef struct {
} DC; /* draw context */ } DC; /* draw context */
typedef struct { typedef struct {
uint mod; unsigned int mod;
KeySym keysym; KeySym keysym;
void (*func)(const Arg *); void (*func)(const Arg *);
const Arg arg; const Arg arg;
@ -127,7 +123,7 @@ typedef struct {
const char *class; const char *class;
const char *instance; const char *instance;
const char *title; const char *title;
uint tags; unsigned int tags;
Bool isfloating; Bool isfloating;
} Rule; } Rule;
@ -148,23 +144,23 @@ static void detach(Client *c);
static void detachstack(Client *c); static void detachstack(Client *c);
static void die(const char *errstr, ...); static void die(const char *errstr, ...);
static void drawbar(void); static void drawbar(void);
static void drawsquare(Bool filled, Bool empty, Bool invert, ulong col[ColLast]); static void drawsquare(Bool filled, Bool empty, Bool invert, unsigned long col[ColLast]);
static void drawtext(const char *text, ulong col[ColLast], Bool invert); static void drawtext(const char *text, unsigned long col[ColLast], Bool invert);
static void enternotify(XEvent *e); static void enternotify(XEvent *e);
static void expose(XEvent *e); static void expose(XEvent *e);
static void focus(Client *c); static void focus(Client *c);
static void focusin(XEvent *e); static void focusin(XEvent *e);
static void focusstack(const Arg *arg); static void focusstack(const Arg *arg);
static Client *getclient(Window w); static Client *getclient(Window w);
static ulong getcolor(const char *colstr); static unsigned long getcolor(const char *colstr);
static long getstate(Window w); static long getstate(Window w);
static Bool gettextprop(Window w, Atom atom, char *text, uint size); static Bool gettextprop(Window w, Atom atom, char *text, unsigned int size);
static void grabbuttons(Client *c, Bool focused); static void grabbuttons(Client *c, Bool focused);
static void grabkeys(void); static void grabkeys(void);
static void initfont(const char *fontstr); static void initfont(const char *fontstr);
static Bool isoccupied(uint t); static Bool isoccupied(unsigned int t);
static Bool isprotodel(Client *c); static Bool isprotodel(Client *c);
static Bool isurgent(uint t); static Bool isurgent(unsigned int t);
static void keypress(XEvent *e); static void keypress(XEvent *e);
static void killclient(const Arg *arg); static void killclient(const Arg *arg);
static void manage(Window w, XWindowAttributes *wa); static void manage(Window w, XWindowAttributes *wa);
@ -186,7 +182,7 @@ static void setmfact(const Arg *arg);
static void setup(void); static void setup(void);
static void spawn(const Arg *arg); static void spawn(const Arg *arg);
static void tag(const Arg *arg); static void tag(const Arg *arg);
static int textnw(const char *text, uint len); static int textnw(const char *text, unsigned int len);
static void tile(void); static void tile(void);
static void togglebar(const Arg *arg); static void togglebar(const Arg *arg);
static void togglefloating(const Arg *arg); static void togglefloating(const Arg *arg);
@ -209,9 +205,9 @@ static void zoom(const Arg *arg);
static char stext[256]; static char stext[256];
static int screen, sx, sy, sw, sh; static int screen, sx, sy, sw, sh;
static int by, bh, blw, wx, wy, ww, wh; static int by, bh, blw, wx, wy, ww, wh;
static uint seltags = 0, sellt = 0; static unsigned int seltags = 0, sellt = 0;
static int (*xerrorxlib)(Display *, XErrorEvent *); static int (*xerrorxlib)(Display *, XErrorEvent *);
static uint numlockmask = 0; static unsigned int numlockmask = 0;
static void (*handler[LASTEvent]) (XEvent *) = { static void (*handler[LASTEvent]) (XEvent *) = {
[ButtonPress] = buttonpress, [ButtonPress] = buttonpress,
[ConfigureRequest] = configurerequest, [ConfigureRequest] = configurerequest,
@ -229,7 +225,7 @@ static void (*handler[LASTEvent]) (XEvent *) = {
static Atom wmatom[WMLast], netatom[NetLast]; static Atom wmatom[WMLast], netatom[NetLast];
static Bool otherwm, readin; static Bool otherwm, readin;
static Bool running = True; static Bool running = True;
static uint tagset[] = {1, 1}; /* after start, first tag is selected */ static unsigned int tagset[] = {1, 1}; /* after start, first tag is selected */
static Client *clients = NULL; static Client *clients = NULL;
static Client *sel = NULL; static Client *sel = NULL;
static Client *stack = NULL; static Client *stack = NULL;
@ -241,13 +237,13 @@ static Window root, barwin;
/* configuration, allows nested code to access above variables */ /* configuration, allows nested code to access above variables */
#include "config.h" #include "config.h"
/* compile-time check if all tags fit into an uint bit array. */ /* compile-time check if all tags fit into an unsigned int bit array. */
struct NumTags { char limitexceeded[sizeof(uint) * 8 < LENGTH(tags) ? -1 : 1]; }; struct NumTags { char limitexceeded[sizeof(unsigned int) * 8 < LENGTH(tags) ? -1 : 1]; };
/* function implementations */ /* function implementations */
void void
applyrules(Client *c) { applyrules(Client *c) {
uint i; unsigned int i;
Rule *r; Rule *r;
XClassHint ch = { 0 }; XClassHint ch = { 0 };
@ -304,7 +300,7 @@ attachstack(Client *c) {
void void
buttonpress(XEvent *e) { buttonpress(XEvent *e) {
uint i, x, click; unsigned int i, x, click;
Arg arg = {0}; Arg arg = {0};
Client *c; Client *c;
XButtonPressedEvent *ev = &e->xbutton; XButtonPressedEvent *ev = &e->xbutton;
@ -546,7 +542,7 @@ drawbar(void) {
} }
void void
drawsquare(Bool filled, Bool empty, Bool invert, ulong col[ColLast]) { drawsquare(Bool filled, Bool empty, Bool invert, unsigned long col[ColLast]) {
int x; int x;
XGCValues gcv; XGCValues gcv;
XRectangle r = { dc.x, dc.y, dc.w, dc.h }; XRectangle r = { dc.x, dc.y, dc.w, dc.h };
@ -567,7 +563,7 @@ drawsquare(Bool filled, Bool empty, Bool invert, ulong col[ColLast]) {
} }
void void
drawtext(const char *text, ulong col[ColLast], Bool invert) { drawtext(const char *text, unsigned long col[ColLast], Bool invert) {
int i, x, y, h, len, olen; int i, x, y, h, len, olen;
XRectangle r = { dc.x, dc.y, dc.w, dc.h }; XRectangle r = { dc.x, dc.y, dc.w, dc.h };
char buf[256]; char buf[256];
@ -679,7 +675,7 @@ getclient(Window w) {
return c; return c;
} }
ulong unsigned long
getcolor(const char *colstr) { getcolor(const char *colstr) {
Colormap cmap = DefaultColormap(dpy, screen); Colormap cmap = DefaultColormap(dpy, screen);
XColor color; XColor color;
@ -694,7 +690,7 @@ getstate(Window w) {
int format, status; int format, status;
long result = -1; long result = -1;
unsigned char *p = NULL; unsigned char *p = NULL;
ulong n, extra; unsigned long n, extra;
Atom real; Atom real;
status = XGetWindowProperty(dpy, w, wmatom[WMState], 0L, 2L, False, wmatom[WMState], status = XGetWindowProperty(dpy, w, wmatom[WMState], 0L, 2L, False, wmatom[WMState],
@ -708,7 +704,7 @@ getstate(Window w) {
} }
Bool Bool
gettextprop(Window w, Atom atom, char *text, uint size) { gettextprop(Window w, Atom atom, char *text, unsigned int size) {
char **list = NULL; char **list = NULL;
int n; int n;
XTextProperty name; XTextProperty name;
@ -735,8 +731,8 @@ gettextprop(Window w, Atom atom, char *text, uint size) {
void void
grabbuttons(Client *c, Bool focused) { grabbuttons(Client *c, Bool focused) {
uint i, j; unsigned int i, j;
uint modifiers[] = { 0, LockMask, numlockmask, numlockmask|LockMask }; unsigned int modifiers[] = { 0, LockMask, numlockmask, numlockmask|LockMask };
XUngrabButton(dpy, AnyButton, AnyModifier, c->win); XUngrabButton(dpy, AnyButton, AnyModifier, c->win);
if(focused) { if(focused) {
@ -751,7 +747,7 @@ grabbuttons(Client *c, Bool focused) {
void void
grabkeys(void) { grabkeys(void) {
uint i, j; unsigned int i, j;
KeyCode code; KeyCode code;
XModifierKeymap *modmap; XModifierKeymap *modmap;
@ -819,7 +815,7 @@ initfont(const char *fontstr) {
} }
Bool Bool
isoccupied(uint t) { isoccupied(unsigned int t) {
Client *c; Client *c;
for(c = clients; c; c = c->next) for(c = clients; c; c = c->next)
@ -844,7 +840,7 @@ isprotodel(Client *c) {
} }
Bool Bool
isurgent(uint t) { isurgent(unsigned int t) {
Client *c; Client *c;
for(c = clients; c; c = c->next) for(c = clients; c; c = c->next)
@ -855,7 +851,7 @@ isurgent(uint t) {
void void
keypress(XEvent *e) { keypress(XEvent *e) {
uint i; unsigned int i;
KeySym keysym; KeySym keysym;
XKeyEvent *ev; XKeyEvent *ev;
@ -979,7 +975,7 @@ monocle(void) {
void void
movemouse(const Arg *arg) { movemouse(const Arg *arg) {
int x1, y1, ocx, ocy, di, nx, ny; int x1, y1, ocx, ocy, di, nx, ny;
uint dui; unsigned int dui;
Client *c; Client *c;
Window dummy; Window dummy;
XEvent ev; XEvent ev;
@ -1216,7 +1212,7 @@ run(void) {
char sbuf[sizeof stext]; char sbuf[sizeof stext];
fd_set rd; fd_set rd;
int r, xfd; int r, xfd;
uint len, offset; unsigned int len, offset;
XEvent ev; XEvent ev;
/* main event loop, also reads status text from stdin */ /* main event loop, also reads status text from stdin */
@ -1272,7 +1268,7 @@ run(void) {
void void
scan(void) { scan(void) {
uint i, num; unsigned int i, num;
Window *wins, d1, d2; Window *wins, d1, d2;
XWindowAttributes wa; XWindowAttributes wa;
@ -1333,7 +1329,7 @@ setmfact(const Arg *arg) {
void void
setup(void) { setup(void) {
uint i; unsigned int i;
int w; int w;
XSetWindowAttributes wa; XSetWindowAttributes wa;
@ -1436,7 +1432,7 @@ tag(const Arg *arg) {
} }
int int
textnw(const char *text, uint len) { textnw(const char *text, unsigned int len) {
XRectangle r; XRectangle r;
if(dc.font.set) { if(dc.font.set) {
@ -1449,7 +1445,7 @@ textnw(const char *text, uint len) {
void void
tile(void) { tile(void) {
int x, y, h, w, mw; int x, y, h, w, mw;
uint i, n; unsigned int i, n;
Client *c; Client *c;
for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next), n++); for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next), n++);
@ -1500,7 +1496,7 @@ togglefloating(const Arg *arg) {
void void
toggletag(const Arg *arg) { toggletag(const Arg *arg) {
uint mask = sel->tags ^ (arg->ui & TAGMASK); unsigned int mask = sel->tags ^ (arg->ui & TAGMASK);
if(sel && mask) { if(sel && mask) {
sel->tags = mask; sel->tags = mask;
@ -1510,7 +1506,7 @@ toggletag(const Arg *arg) {
void void
toggleview(const Arg *arg) { toggleview(const Arg *arg) {
uint mask = tagset[seltags] ^ (arg->ui & TAGMASK); unsigned int mask = tagset[seltags] ^ (arg->ui & TAGMASK);
if(mask) { if(mask) {
tagset[seltags] = mask; tagset[seltags] = mask;