/* * (C)opyright MMIV-MMVI Anselm R. Garbe * See LICENSE file for license details. */ #include #include #define BLITZ_FONT "fixed" #define BLITZ_SELCOLORS "#ffffff #555588 #8888bb" #define BLITZ_NORMCOLORS "#dddddd #666666 #999999" typedef enum { CENTER, WEST, NWEST, NORTH, NEAST, EAST, SEAST, SOUTH, SWEST } Align; typedef struct { unsigned long bg; unsigned long fg; unsigned long border; } Color; typedef struct { Align align; Drawable drawable; GC gc; Color color; XFontStruct *font; XRectangle rect; /* relative rect */ XRectangle *notch; /* relative notch rect */ char *data; } Draw; /* draw.c */ XFontStruct *blitz_getfont(Display * dpy, char *fontstr); int blitz_loadcolor(Display *dpy, int mon, char *colstr, Color *c); void blitz_drawlabel(Display * dpy, Draw * r); void blitz_drawmeter(Display * dpy, Draw * r); void blitz_drawlabelnoborder(Display * dpy, Draw * r); /* geometry.c */ int blitz_strtoalign(Align *result, char *val); int blitz_strtorect(XRectangle * root, XRectangle * r, char *val); Bool blitz_ispointinrect(int x, int y, XRectangle * r); int blitz_distance(XRectangle * origin, XRectangle * target); void blitz_getbasegeometry(unsigned int size, unsigned int *cols, unsigned int *rows);