diff options
Diffstat (limited to 'src/draw.h')
| -rw-r--r-- | src/draw.h | 25 |
1 files changed, 20 insertions, 5 deletions
@@ -1,3 +1,10 @@ +// Metric +#define A4_WIDTH 210 +#define A4_HEIGHT 297 + +#define US_LETTER_WIDTH 216 +#define US_LETTER_HEIGHT 279 + struct dimensions { int row_count; /* rows */ @@ -30,6 +37,8 @@ month_info { int month_position; int first_day; int num_of_days; + int column_count; + int row_count; int minimum_rows; }; @@ -42,6 +51,12 @@ extents { }; +struct alignment { + double margin; + double padding; +}; + + struct RGB hex_to_rgb(char *str); @@ -54,9 +69,6 @@ draw_text(cairo_t *c, double x, double y, char *font_family, int font_size, char int calculate_dimensions(double pw, double ph, struct dimensions *d); -int -print_dimensions(struct dimensions *d); - //int //draw_month_grid(cairo_t *c, struct month_info *m, struct dimensions *d); @@ -64,17 +76,20 @@ int draw_month_grid (cairo_t *c, struct month_info *m, struct extents *me, struct extents *de); int -draw_month(cairo_t *c, cairo_t *cd, cairo_surface_t *s, struct month_info *m, struct dimensions *d); +draw_month_dates(cairo_t *c, cairo_t *cd, cairo_surface_t *s, struct month_info *m, struct extents *me, struct extents *de); int day_of_week(int d, int m, int y); int -draw_month_title(cairo_t *c, struct dimensions *d, char *font_family, int font_size, char *name); +draw_month_title(cairo_t *c, struct extents *he, struct alignment *pl, char *font_family, int font_size, char *name); PangoRectangle get_logical_extents(cairo_t *c, char *font_family, int font_size, char *text); +PangoRectangle +get_ink_extents (cairo_t *c, char *font_family, int font_size, char *text); + int calculate_minimum_rows(struct month_info *m); |
