diff options
author | David Robillard <d@drobilla.net> | 2012-09-17 20:41:51 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2012-09-17 20:41:51 +0000 |
commit | df5f31a628df0240aba6c9f7ae0586e77ec127ac (patch) | |
tree | 01f858fc16e90f291e7d9bc8d4d8854c0b29d215 /src/edge.c | |
parent | 5328d6de1338ccd6ff4a554d1e94196ddb8b16c0 (diff) | |
download | ganv-df5f31a628df0240aba6c9f7ae0586e77ec127ac.tar.gz ganv-df5f31a628df0240aba6c9f7ae0586e77ec127ac.tar.bz2 ganv-df5f31a628df0240aba6c9f7ae0586e77ec127ac.zip |
Add Canvas::remove_edge and allow for_each_edge to be used to remove edges.
Add Edge handle_radius accessors.
git-svn-id: http://svn.drobilla.net/lad/trunk/ganv@4777 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/edge.c')
-rw-r--r-- | src/edge.c | 20 |
1 files changed, 12 insertions, 8 deletions
@@ -207,11 +207,13 @@ request_redraw(GanvCanvasBase* canvas, x2 + w, y2 + w); } - ganv_canvas_base_request_redraw(canvas, - coords->handle_x - coords->handle_radius, - coords->handle_y - coords->handle_radius, - coords->handle_x + coords->handle_radius, - coords->handle_y + coords->handle_radius); + if (coords->handle_radius > 0.0) { + ganv_canvas_base_request_redraw(canvas, + coords->handle_x - coords->handle_radius, + coords->handle_y - coords->handle_radius, + coords->handle_x + coords->handle_radius, + coords->handle_y + coords->handle_radius); + } if (coords->arrowhead) { ganv_canvas_base_request_redraw( @@ -420,9 +422,11 @@ ganv_edge_draw(GanvItem* item, cairo_stroke(cr); - cairo_move_to(cr, join_x, join_y); - cairo_arc(cr, join_x, join_y, impl->coords.handle_radius, 0, 2 * G_PI); - cairo_fill(cr); + if (impl->coords.handle_radius > 0.0) { + cairo_move_to(cr, join_x, join_y); + cairo_arc(cr, join_x, join_y, impl->coords.handle_radius, 0, 2 * G_PI); + cairo_fill(cr); + } } static double |