summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-12-29 14:37:34 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-12-29 14:37:34 +0000
commita06c33b6d91ea9ef8f3970a6027ffdf6f267d0b3 (patch)
tree73ad3e1cb350e1a27f006ae8a9ba8d2b0a2db287
parent3367dc367199f40b030d262a7680c54d9e7b6769 (diff)
fix up ordering of rounding error handling for simpleline
git-svn-id: svn://localhost/ardour2/branches/3.0@8363 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--gtk2_ardour/canvas-simpleline.c28
1 files changed, 14 insertions, 14 deletions
diff --git a/gtk2_ardour/canvas-simpleline.c b/gtk2_ardour/canvas-simpleline.c
index e34f4aa541..6d58312855 100644
--- a/gtk2_ardour/canvas-simpleline.c
+++ b/gtk2_ardour/canvas-simpleline.c
@@ -317,28 +317,28 @@ gnome_canvas_simpleline_update (GnomeCanvasItem *item, double *affine, ArtSVP *c
gnome_canvas_item_i2w (item, &x1, &y1);
gnome_canvas_item_i2w (item, &x2, &y2);
- /* reset item bounding box (canvas coordinates, so integral. but stored in doubles) */
-
- gnome_canvas_w2c_d (GNOME_CANVAS(item->canvas), x1, y1, &item->x1, &item->y1);
- gnome_canvas_w2c_d (GNOME_CANVAS(item->canvas), x2, y2, &item->x2, &item->y2);
-
/* don't suffer from rounding errors */
- item->x1 = floor (item->x1);
- item->y1 = floor (item->y1);
- item->x2 = ceil (item->x2);
- item->y2 = ceil (item->y2);
+ x1 = floor (x1);
+ y1 = floor (y1);
+ x2 = ceil (x2);
+ y2 = ceil (y2);
/* force non-zero dimensionality for both axes */
-
- if (item->x1 == item->x2) {
- item->x2 += 1.0;
+
+ if (x1 == x2) {
+ x2 += 1.0;
}
- if (item->y1 == item->y2) {
- item->y2 += 1.0;
+ if (y1 == y2) {
+ y2 += 1.0;
}
+ /* reset item bounding box (canvas coordinates, so integral. but stored in doubles) */
+
+ gnome_canvas_w2c_d (GNOME_CANVAS(item->canvas), x1, y1, &item->x1, &item->y1);
+ gnome_canvas_w2c_d (GNOME_CANVAS(item->canvas), x2, y2, &item->x2, &item->y2);
+
/* redraw new location */
gnome_canvas_request_redraw (item->canvas, item->x1, item->y1, item->x2, item->y2);