garbeam@2: /* garbeam@2: * (C)opyright MMVI Anselm R. Garbe garbeam@2: * See LICENSE file for license details. garbeam@2: */ garbeam@2: garbeam@3: #include garbeam@3: #include garbeam@3: garbeam@3: typedef struct Brush Brush; garbeam@3: typedef struct Fnt Fnt; garbeam@3: garbeam@3: struct Fnt { garbeam@3: XFontStruct *xfont; garbeam@3: XFontSet set; garbeam@3: int ascent; garbeam@3: int descent; garbeam@3: int height; garbeam@3: }; garbeam@3: garbeam@3: struct Brush { garbeam@3: GC gc; garbeam@3: Drawable drawable; garbeam@3: XRectangle rect; garbeam@3: Fnt font; garbeam@3: unsigned long bg; garbeam@3: unsigned long fg; garbeam@3: unsigned long border; garbeam@3: }; garbeam@3: garbeam@3: extern void draw(Display *dpy, Brush *b, Bool border, const char *text); garbeam@3: extern void loadcolors(Display *dpy, int screen, Brush *b, garbeam@3: const char *bg, const char *fg, const char *bo); garbeam@3: extern void loadfont(Display *dpy, Fnt *font, const char *fontstr); garbeam@3: extern unsigned int textwidth_l(Fnt *font, char *text, unsigned int len); garbeam@3: extern unsigned int textwidth(Fnt *font, char *text); garbeam@5: extern unsigned int labelheight(Fnt *font);