tremoved DDC, all is Draw-dependent - dwm - [fork] customized build of dwm, the… | |
git clone git://src.adamsgaard.dk/dwm | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit c0ba635c50dc53f06e4fc96392415b3d19b25826 | |
parent 0a673ad7a37f3a1bdda7cef316bda300f8f181eb | |
Author: [email protected] <unknown> | |
Date: Sun, 18 Nov 2012 17:52:42 +0100 | |
removed DDC, all is Draw-dependent | |
Diffstat: | |
M draw.c | 65 +++++++++--------------------… | |
M draw.h | 57 ++++++++++++-----------------… | |
2 files changed, 40 insertions(+), 82 deletions(-) | |
--- | |
diff --git a/draw.c b/draw.c | |
t@@ -35,28 +35,6 @@ draw_free(Draw *draw) { | |
free(draw); | |
} | |
-DDC * | |
-dc_create(Draw *draw) { | |
- DDC *dc = (DDC *)calloc(1, sizeof(DDC)); | |
- dc->draw = draw; | |
- dc->next = draw->dc; | |
- draw->dc = dc; | |
- return dc; | |
-} | |
- | |
-void | |
-dc_free(DDC *dc) { | |
- DDC **tdc; | |
- | |
- if(!dc) | |
- return; | |
- /* remove from dc list */ | |
- for(tdc = &dc->draw->dc; *tdc && *tdc != dc; tdc = &(*tdc)->next); | |
- *tdc = dc->next; | |
- /* TODO: deallocate any resources of this dc, if needed */ | |
- free(dc); | |
-} | |
- | |
Fnt * | |
font_create(const char *fontname) { | |
Fnt *font = (Fnt *)calloc(1, sizeof(Fnt)); | |
t@@ -88,57 +66,50 @@ col_free(Col *col) { | |
} | |
void | |
-dc_setfont(DDC *dc, Fnt *font) { | |
- if(!dc || !font) | |
+draw_setfont(Draw *draw, Fnt *font) { | |
+ if(!draw || !font) | |
return; | |
- dc->font = font; | |
+ draw->font = font; | |
} | |
void | |
-dc_setfg(DDC *dc, Col *col) { | |
- if(!dc || !col) | |
+draw_setfg(Draw *draw, Col *col) { | |
+ if(!draw || !col) | |
return; | |
- dc->fg = col; | |
+ draw->fg = col; | |
} | |
void | |
-dc_setbg(DDC *dc, Col *col) { | |
- if(!dc || !col) | |
+draw_setbg(Draw *draw, Col *col) { | |
+ if(!draw || !col) | |
return; | |
- dc->bg = col; | |
+ draw->bg = col; | |
} | |
void | |
-dc_setfill(DDC *dc, Bool fill) { | |
- if(!dc) | |
- return; | |
- dc->fill = fill; | |
-} | |
- | |
-void | |
-dc_drawrect(DDC *dc, int x, int y, unsigned int w, unsigned int h) { | |
- if(!dc) | |
+draw_rect(Draw *draw, int x, int y, unsigned int w, unsigned int h) { | |
+ if(!draw) | |
return; | |
/* TODO: draw the rectangle */ | |
} | |
void | |
-dc_drawtext(DDC *dc, int x, int y, const char *text) { | |
- if(!dc) | |
+draw_text(Draw *draw, int x, int y, const char *text) { | |
+ if(!draw) | |
return; | |
/* TODO: draw the text */ | |
} | |
void | |
-dc_map(DDC *dc, int x, int y, unsigned int w, unsigned int h) { | |
- if(!dc) | |
+draw_map(Draw *draw, int x, int y, unsigned int w, unsigned int h) { | |
+ if(!draw) | |
return; | |
- /* TODO: map the dc contents in the region */ | |
+ /* TODO: map the draw contents in the region */ | |
} | |
void | |
-dc_getextents(DDC *dc, const char *text, TextExtents *extents) { | |
- if(!dc || !extents) | |
+draw_getextents(Draw *draw, const char *text, TextExtents *extents) { | |
+ if(!draw || !extents) | |
return; | |
/* TODO: get extents */ | |
} | |
diff --git a/draw.h b/draw.h | |
t@@ -1,19 +1,5 @@ | |
/* See LICENSE file for copyright and license details. */ | |
-typedef struct _DDC DDC; | |
- | |
-/* X11 types - begin */ | |
-typedef struct _XDraw Draw; | |
-struct _XDraw { | |
- unsigned int w, h; | |
- Display *dpy; | |
- int screen; | |
- Window win; | |
- Drawable drawable; | |
- GC gc; | |
- DDC *dc; | |
-}; | |
- | |
struct _XCol { | |
unsigned long rgb; | |
}; | |
t@@ -29,15 +15,6 @@ struct _XFont { | |
typedef struct _XFont Fnt; | |
/* X11 types - end */ | |
-struct _DDC { | |
- Draw *draw; | |
- Col *fg; | |
- Col *bg; | |
- Fnt *font; | |
- Bool fill; | |
- DDC *next; | |
-}; | |
- | |
typedef struct { | |
unsigned int w; | |
unsigned int h; | |
t@@ -47,15 +24,26 @@ 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, int screen, Window win, unsigned int w, unsign… | |
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); | |
t@@ -65,18 +53,17 @@ Col *col_create(const char *colname); | |
void col_free(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); | |