tsome cleanup, removed ntags variable, defined NTAGS macro, simplified tag(), v… | |
git clone git://src.adamsgaard.dk/dwm | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 29f2b15ddc3a1462780340a10738a98a5e9280eb | |
parent 7b65b763bc5ef74071b48192e7174ba8a103bee0 | |
Author: [email protected] <unknown> | |
Date: Wed, 24 Oct 2007 16:07:43 +0200 | |
some cleanup, removed ntags variable, defined NTAGS macro, simplified tag(), vi… | |
Diffstat: | |
M dwm.c | 47 +++++++++++++----------------… | |
1 file changed, 20 insertions(+), 27 deletions(-) | |
--- | |
diff --git a/dwm.c b/dwm.c | |
t@@ -232,10 +232,9 @@ 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}; | |
+#define NTAGS (sizeof tags / sizeof tags[0]) | |
+Bool seltags[NTAGS] = {[0] = True}; | |
+Bool prevtags[NTAGS] = {[0] = True}; | |
/* function implementations */ | |
void | |
t@@ -254,7 +253,7 @@ applyrules(Client *c) { | |
for(i = 0; i < nrules; i++) | |
if(regs[i].propregex && !regexec(regs[i].propregex, buf, 1, &t… | |
c->isfloating = rules[i].isfloating; | |
- for(j = 0; regs[i].tagregex && j < ntags; j++) { | |
+ for(j = 0; regs[i].tagregex && j < NTAGS; j++) { | |
if(!regexec(regs[i].tagregex, tags[j], 1, &tmp… | |
matched = True; | |
c->tags[j] = True; | |
t@@ -313,7 +312,7 @@ buttonpress(XEvent *e) { | |
if(barwin == ev->window) { | |
x = 0; | |
- for(i = 0; i < ntags; i++) { | |
+ for(i = 0; i < NTAGS; i++) { | |
x += textw(tags[i]); | |
if(ev->x < x) { | |
if(ev->button == Button1) { | |
t@@ -537,7 +536,7 @@ drawbar(void) { | |
int i, x; | |
dc.x = dc.y = 0; | |
- for(i = 0; i < ntags; i++) { | |
+ for(i = 0; i < NTAGS; i++) { | |
dc.w = textw(tags[i]); | |
if(seltags[i]) { | |
drawtext(tags[i], dc.sel); | |
t@@ -847,10 +846,8 @@ unsigned int | |
idxoftag(const char *tag) { | |
unsigned int i; | |
- for(i = 0; i < ntags; i++) | |
- if(tags[i] == tag) | |
- return i; | |
- return 0; | |
+ for(i = 0; (i < NTAGS) && (tags[i] != tag); i++); | |
+ return (i < NTAGS) ? i : 0; | |
} | |
void | |
t@@ -930,7 +927,7 @@ Bool | |
isvisible(Client *c) { | |
unsigned int i; | |
- for(i = 0; i < ntags; i++) | |
+ for(i = 0; i < NTAGS; i++) | |
if(c->tags[i] && seltags[i]) | |
return True; | |
return False; | |
t@@ -1140,7 +1137,7 @@ propertynotify(XEvent *e) { | |
default: break; | |
case XA_WM_TRANSIENT_FOR: | |
XGetTransientForHint(dpy, c->win, &trans); | |
- if(!c->isfloating && (c->isfloating = (getclie… | |
+ if(!c->isfloating && (c->isfloating = (NULL !=… | |
arrange(); | |
break; | |
case XA_WM_NORMAL_HINTS: | |
t@@ -1542,11 +1539,9 @@ tag(const char *arg) { | |
if(!sel) | |
return; | |
- for(i = 0; i < ntags; i++) | |
- sel->tags[i] = arg == NULL; | |
- i = idxoftag(arg); | |
- if(i >= 0 && i < ntags) | |
- sel->tags[i] = True; | |
+ for(i = 0; i < NTAGS; i++) | |
+ sel->tags[i] = (NULL == arg); | |
+ sel->tags[idxoftag(arg)] = True; | |
arrange(); | |
} | |
t@@ -1662,9 +1657,9 @@ toggletag(const char *arg) { | |
return; | |
i = idxoftag(arg); | |
sel->tags[i] = !sel->tags[i]; | |
- for(j = 0; j < ntags && !sel->tags[j]; j++); | |
- if(j == ntags) | |
- sel->tags[i] = True; | |
+ for(j = 0; j < NTAGS && !sel->tags[j]; j++); | |
+ if(j == NTAGS) | |
+ sel->tags[i] = True; /* at least one tag must be enabled */ | |
arrange(); | |
} | |
t@@ -1674,8 +1669,8 @@ toggleview(const char *arg) { | |
i = idxoftag(arg); | |
seltags[i] = !seltags[i]; | |
- for(j = 0; j < ntags && !seltags[j]; j++); | |
- if(j == ntags) | |
+ for(j = 0; j < NTAGS && !seltags[j]; j++); | |
+ if(j == NTAGS) | |
seltags[i] = True; /* at least one tag must be viewed */ | |
arrange(); | |
} | |
t@@ -1841,11 +1836,9 @@ view(const char *arg) { | |
unsigned int i; | |
memcpy(prevtags, seltags, sizeof seltags); | |
- for(i = 0; i < ntags; i++) | |
+ for(i = 0; i < NTAGS; i++) | |
seltags[i] = arg == NULL; | |
- i = idxoftag(arg); | |
- if(i >= 0 && i < ntags) | |
- seltags[i] = True; | |
+ seltags[idxoftag(arg)] = True; | |
arrange(); | |
} | |