From c9493aae669fada3659547b2ce02ee292eb58ba5 Mon Sep 17 00:00:00 2001 From: foswret Date: Tue, 25 Nov 2025 22:54:17 -0600 Subject: cleaned up Makefile --- draw.h | 76 +++--------------------------------------------------------------- 1 file changed, 3 insertions(+), 73 deletions(-) (limited to 'draw.h') diff --git a/draw.h b/draw.h index 503b9c5..7c473a7 100644 --- a/draw.h +++ b/draw.h @@ -12,83 +12,13 @@ struct dimensions { -int draw_calendar(cairo_t *c, double x, double y, struct dimensions d) { - double x1, y1, x2, y2; - x1 = x; - y1 = y; - x2 = d.pw - x1; /* Set the line endpoint to right side of the page */ +int draw_calendar(cairo_t *c, double x, double y, struct dimensions d); - for (int i = 0; i < d.r + 1; i++) { /* Draw Horizontal Lines */ - cairo_move_to (c, x, y); - cairo_line_to (c, x2, y); - y = y + d.bh; - } - x = x1; - y = y1; - y2 = y1 + d.mh; /* Set the line endpoint as the bottom of the month */ - for (int i = 0; i < d.c + 1; i++) { /* Draw Vertical Lines */ - cairo_move_to (c, x, y); - cairo_line_to (c, x, y2); - x = x + d.bw; - } - cairo_stroke(c); - return(0); -} +int draw_numbers(cairo_t *c, double x, double y, struct dimensions d, int wd, int nd); -int draw_numbers(cairo_t *c, double x, double y, struct dimensions d, int wd, int nd) { - char str[3]; - cairo_text_extents_t te; - cairo_font_extents_t fe; - cairo_select_font_face (c, "sans-serif", - CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_BOLD); - cairo_set_font_size (c, d.bw / 2); - - int iterative = 0; - cairo_font_extents (c, &fe); - double yi = y; - double xi = x; - int current_weekday = wd; - x = d.m + (wd * d.bw); - for (int j = 0; j < d.r; j++) { - y = y + d.bh - ((d.bh - fe.ascent) / 2); - for (int k = current_weekday; k < d.c; k++) { - if (iterative < nd) { - sprintf(str, "%d", iterative + 1); - cairo_text_extents (c, str, &te); - double box_margins = (d.bw - te.width) / 2; - - cairo_move_to(c, x + box_margins - te.x_bearing, y); /* center the number within the box */ - cairo_show_text(c, str); - cairo_move_to(c, x, y); /* Sort of backtrack to realign with the spacing of the boxes */ - x = x + d.bw; - iterative++; - current_weekday++; - } - } - current_weekday = 0; - y = y - (d.bh - ((d.bh - fe.ascent) / 2)); - y = y + d.bh; - x = xi; - } - return(0); -} - - - -int draw_month_name(cairo_t *c, char *name, struct dimensions d) { - double x, y = d.m; - cairo_set_font_size(c, 1.0); - cairo_text_extents_t te; - cairo_font_extents_t fe; - cairo_text_extents(c, name, &te); - x = (d.pw / 2) - (te.width / 2); - y = 1.5; - cairo_move_to(c, x, y); - cairo_show_text(c, &name[0]); - return(0); -} +int draw_month_name(cairo_t *c, char *name, struct dimensions d); -- cgit v1.2.3