32 #include "drawing_helper.h"
34 void dh_set_color(cairo_t *cairo, GdkColor *color)
36 gdk_cairo_set_source_color(cairo, color);
39 void dh_set_white_color(cairo_t *cairo_surface)
42 color.red = 255 * 255;color.green = 255 * 255;color.blue = 255 * 255;
43 dh_set_color(cairo_surface, &color);
46 void dh_set_red_color(cairo_t *cairo_surface)
49 color.red = 255 * 255;color.green = 0 * 255;color.blue = 0 * 255;
50 dh_set_color(cairo_surface, &color);
53 void dh_draw_rectangle(cairo_t *cairo, gboolean filled, gint x, gint y,
54 gint width, gint height)
56 cairo_rectangle(cairo, x, y, width, height);
66 void dh_draw_arc(cairo_t *cairo, gboolean filled, gint x, gint y,
67 double radius,
double angle1,
double angle2)
69 cairo_arc(cairo, x, y, radius, angle1, angle2);
79 void dh_draw_text(cairo_t *cairo,
const gchar *text, gint x, gint y)
81 dh_draw_text_with_size(cairo, text, x, y, 11.0);
84 void dh_draw_text_with_size(cairo_t *cairo,
const gchar *text, gint x, gint y,
87 cairo_select_font_face(cairo,
"Sans 11", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);
88 cairo_set_font_size(cairo, font_size);
90 cairo_move_to(cairo, x, y + 13);
91 cairo_show_text(cairo, text);
94 void dh_draw_line_with_width(cairo_t *cairo, gint x1, gint y1, gint x2, gint y2,
95 gboolean line_is_dashed, gboolean stroke,
double line_width)
97 double dashes[] = { 1.0, 3.0 };
100 cairo_set_dash(cairo, dashes, 2, -50.0);
104 cairo_set_dash(cairo, dashes, 0, 0.0);
107 cairo_set_line_width(cairo, line_width);
108 cairo_set_line_cap(cairo, CAIRO_LINE_CAP_ROUND);
109 cairo_move_to(cairo, x1, y1);
110 cairo_line_to(cairo, x2, y2);
118 void dh_draw_line(cairo_t *cairo, gint x1, gint y1, gint x2, gint y2,
119 gboolean line_is_dashed, gboolean stroke)
121 dh_draw_line_with_width(cairo, x1, y1, x2, y2, line_is_dashed, stroke, 1.2);
124 void draw_point(cairo_t *cairo, gint x, gint y)
126 dh_draw_line(cairo, x, y, x, y, FALSE, FALSE);