112 int i, x; |
112 int i, x; |
113 Bool istile = arrange == dotile; |
113 Bool istile = arrange == dotile; |
114 |
114 |
115 dc.x = dc.y = 0; |
115 dc.x = dc.y = 0; |
116 dc.w = bw; |
116 dc.w = bw; |
117 drawtext(NULL, !istile, False); |
117 drawtext(NULL, istile ? 1 : 0, False); |
118 |
118 |
119 dc.w = 0; |
119 dc.w = 0; |
120 for(i = 0; i < ntags; i++) { |
120 for(i = 0; i < ntags; i++) { |
121 dc.x += dc.w; |
121 dc.x += dc.w; |
122 dc.w = textw(tags[i]); |
122 dc.w = textw(tags[i]); |
123 if(istile) |
123 if(istile) |
124 drawtext(tags[i], seltag[i], sel && sel->tags[i]); |
124 drawtext(tags[i], seltag[i] ? 0 : 1, sel && sel->tags[i]); |
125 else |
125 else |
126 drawtext(tags[i], !seltag[i], sel && sel->tags[i]); |
126 drawtext(tags[i], seltag[i] ? 1 : 0, sel && sel->tags[i]); |
127 } |
127 } |
128 x = dc.x + dc.w; |
128 x = dc.x + dc.w; |
129 dc.w = textw(stext); |
129 dc.w = textw(stext); |
130 dc.x = bx + bw - dc.w; |
130 dc.x = bx + bw - dc.w; |
131 if(dc.x < x) { |
131 if(dc.x < x) { |
132 dc.x = x; |
132 dc.x = x; |
133 dc.w = bw - x; |
133 dc.w = bw - x; |
134 } |
134 } |
135 drawtext(stext, !istile, False); |
135 drawtext(stext, istile ? 1 : 0, False); |
136 |
136 |
137 if(sel && ((dc.w = dc.x - x) > bh)) { |
137 if(sel && ((dc.w = dc.x - x) > bh)) { |
138 dc.x = x; |
138 dc.x = x; |
139 drawtext(sel->name, istile, False); |
139 drawtext(sel->name, istile ? 0 : 1, False); |
140 } |
140 } |
141 XCopyArea(dpy, dc.drawable, barwin, dc.gc, 0, 0, bw, bh, 0, 0); |
141 XCopyArea(dpy, dc.drawable, barwin, dc.gc, 0, 0, bw, bh, 0, 0); |
142 XSync(dpy, False); |
142 XSync(dpy, False); |
143 } |
143 } |
144 |
144 |
157 |
157 |
158 XSetWindowBorder(dpy, c->win, dc.bg[0]); |
158 XSetWindowBorder(dpy, c->win, dc.bg[0]); |
159 XMapWindow(dpy, c->twin); |
159 XMapWindow(dpy, c->twin); |
160 dc.x = dc.y = 0; |
160 dc.x = dc.y = 0; |
161 dc.w = c->tw; |
161 dc.w = c->tw; |
162 drawtext(c->name, !istile, False); |
162 drawtext(c->name, istile ? 1 : 0, False); |
163 XCopyArea(dpy, dc.drawable, c->twin, dc.gc, 0, 0, c->tw, c->th, 0, 0); |
163 XCopyArea(dpy, dc.drawable, c->twin, dc.gc, 0, 0, c->tw, c->th, 0, 0); |
164 XSync(dpy, False); |
164 XSync(dpy, False); |
165 } |
165 } |
166 |
166 |
167 unsigned long |
167 unsigned long |