889904316c6375f115496ddc8aadf1b2e887f807
[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 }