aboutsummaryrefslogtreecommitdiff
path: root/src/draw.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/draw.h')
-rw-r--r--src/draw.h25
1 files changed, 20 insertions, 5 deletions
diff --git a/src/draw.h b/src/draw.h
index 274fd29..0399778 100644
--- a/src/draw.h
+++ b/src/draw.h
@@ -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);