X-Git-Url: https://jasonwoof.com/gitweb/?p=dwm.git;a=blobdiff_plain;f=draw.h;h=0c811ab27072953452dfe0ff3fe8ca6da64ade3e;hp=955067df54f0b7315905e373ed722af367ee0e00;hb=f21d46ea7def76221c4173f644eb2188ae9edbb1;hpb=87adcd263b1fc75f7eb3172dac55ca641fd7a96a diff --git a/draw.h b/draw.h index 955067d..0c811ab 100644 --- a/draw.h +++ b/draw.h @@ -1,14 +1,5 @@ /* See LICENSE file for copyright and license details. */ -/* X11 types - begin */ -struct _XDraw { - unsigned int w, h; - Display *dpy; - Drawable drawable; - GC gc; -}; -typedef struct _XDraw Draw; - struct _XCol { unsigned long rgb; }; @@ -17,7 +8,7 @@ typedef struct _XCol Col; struct _XFont { int ascent; int descent; - unsigned int h, w; + unsigned int h; XFontSet set; XFontStruct *xfont; }; @@ -25,14 +16,6 @@ typedef struct _XFont Fnt; /* X11 types - end */ typedef struct { - Draw *draw; - Col *fg; - Col *bg; - Fnt *font; - Bool fill; -} DDC; - -typedef struct { unsigned int w; unsigned int h; int x; @@ -41,36 +24,46 @@ typedef struct { int yOff; } TextExtents; + +/* X11 types - begin */ +typedef struct _XDraw Draw; +struct _XDraw { + unsigned int w, h; + Display *dpy; + int screen; + Window win; + Drawable drawable; + GC gc; + Col *fg; + Col *bg; + Fnt *font; +}; + /* Drawable abstraction */ -Draw *draw_create(Display *dpy, Window win, unsigned int w, unsigned int h); +Draw *draw_create(Display *dpy, int screen, Window win, unsigned int w, unsigned int h); void draw_resize(Draw *draw, unsigned int w, unsigned int h); void draw_free(Draw *draw); -/* Drawing context abstraction */ -DDC *dc_create(Draw *draw); -void dc_free(DDC *dc); - /* Fnt abstraction */ -Fnt *font_create(const char *fontname); -void font_free(Fnt *font); +Fnt *draw_font_create(Draw *draw, const char *fontname); +void draw_font_free(Draw *draw, Fnt *font); /* Colour abstraction */ -Col *col_create(const char *colname); -void col_free(Col *col); +Col *draw_col_create(Draw *draw, const char *colname); +void draw_col_free(Draw *draw, Col *col); /* Drawing context manipulation */ -void dc_setfont(DDC *dc, Fnt *font); -void dc_setfg(DDC *dc, Col col); -void dc_setbg(DDC *dc, Col col); -void dc_setfill(DDC *dc, Bool fill); +void draw_setfont(Draw *draw, Fnt *font); +void draw_setfg(Draw *draw, Col *col); +void draw_setbg(Draw *draw, Col *col); /* Drawing functions */ -void dc_drawrect(DDC *dc, int x, int y, unsigned int w, unsigned int h); -void dc_drawtext(DDC *dc, int x, int y, const char *text); +void draw_rect(Draw *draw, int x, int y, unsigned int w, unsigned int h); +void draw_text(Draw *draw, int x, int y, const char *text); /* Map functions */ -void dc_map(DDC *dc, int x, int y, unsigned int w, unsigned int h); +void draw_map(Draw *draw, int x, int y, unsigned int w, unsigned int h); /* Text functions */ -void dc_getextents(DDC *dc, const char *text, TextExtents *extents); +void draw_getextents(Draw *draw, const char *text, TextExtents *extents);