Xinqi Bao's Git

extended libdraw
[dmenu.git] / draw / drawsquare.c
1 /* See LICENSE file for copyright and license details. */
2 #include <X11/Xlib.h>
3 #include "draw.h"
4
5 void
6 drawsquare(DC *dc, Bool filled, unsigned long col[ColLast], Bool invert) {
7 int n;
8 XRectangle r = { dc->x, dc->y, dc->w, dc->h };
9
10 XSetForeground(dc->dpy, dc->gc, col[invert ? ColBG : ColFG]);
11 n = ((dc->font.ascent + dc->font.descent + 2) / 4) + (filled ? 1 : 0);
12 r.width = r.height = n;
13 r.x = dc->x + 1;
14 r.y = dc->y + 1;
15 if(filled)
16 XFillRectangles(dc->dpy, dc->drawable, dc->gc, &r, 1);
17 else
18 XDrawRectangles(dc->dpy, dc->drawable, dc->gc, &r, 1);
19 }