summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/editor_drag.cc2
-rw-r--r--libs/canvas/canvas/item.h5
-rw-r--r--libs/canvas/item.cc6
3 files changed, 10 insertions, 3 deletions
diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc
index 44b50d0131..7004f9b419 100644
--- a/gtk2_ardour/editor_drag.cc
+++ b/gtk2_ardour/editor_drag.cc
@@ -1,4 +1,4 @@
-*
+/*
Copyright (C) 2009 Paul Davis
This program is free software; you can redistribute it and/or modify
diff --git a/libs/canvas/canvas/item.h b/libs/canvas/canvas/item.h
index 5483c5124c..980f11be07 100644
--- a/libs/canvas/canvas/item.h
+++ b/libs/canvas/canvas/item.h
@@ -148,6 +148,11 @@ public:
void canvas_to_item (Coord &, Coord &) const;
void item_to_canvas (Coord &, Coord &) const;
+ Duple canvas_to_item (Duple const&) const;
+ Rect item_to_canvas (Rect const&) const;
+ Duple item_to_canvas (Duple const&) const;
+ Rect canvas_to_item (Rect const&) const;
+
Duple item_to_window (Duple const&, bool rounded = true) const;
Duple window_to_item (Duple const&) const;
Rect item_to_window (Rect const&) const;
diff --git a/libs/canvas/item.cc b/libs/canvas/item.cc
index ddc05a817a..bab6e73b54 100644
--- a/libs/canvas/item.cc
+++ b/libs/canvas/item.cc
@@ -173,8 +173,10 @@ Item::item_to_window (ArdourCanvas::Duple const & d, bool rounded) const
{
Duple ret = item_to_canvas (d).translate (-scroll_offset());
- ret.x = round (ret.x);
- ret.y = round (ret.y);
+ if (rounded) {
+ ret.x = round (ret.x);
+ ret.y = round (ret.y);
+ }
return ret;
}