Merge branch 'master' into cairocanvas
[ardour.git] / gtk2_ardour / automation_region_view.cc
index ed1283e024d9cb12567246ef96fcdd213696a877..f48fec43b95ed0a8a61276560ee97598398f5453 100644 (file)
@@ -26,7 +26,6 @@
 #include "ardour/midi_automation_list_binder.h"
 #include "ardour/midi_region.h"
 #include "ardour/session.h"
-#include "ardour/source.h"
 
 #include "automation_region_view.h"
 #include "editing.h"
@@ -53,7 +52,7 @@ AutomationRegionView::AutomationRegionView (ArdourCanvas::Group*
                create_line(list);
        }
 
-       group->signal_event().connect (sigc::mem_fun (this, &AutomationRegionView::canvas_event), false);
+       group->Event.connect (sigc::mem_fun (this, &AutomationRegionView::canvas_event));
        group->raise_to_top();
 }
 
@@ -70,7 +69,7 @@ AutomationRegionView::init (Gdk::Color const & basic_color, bool /*wfd*/)
 
        compute_colors (basic_color);
 
-       reset_width_dependent_items ((double) _region->length() / samples_per_unit);
+       reset_width_dependent_items ((double) _region->length() / frames_per_pixel);
 
        set_height (trackview.current_height());
 
@@ -90,8 +89,7 @@ AutomationRegionView::create_line (boost::shared_ptr<ARDOUR::AutomationList> lis
                                &_source_relative_time_converter));
        _line->set_colors();
        _line->set_height ((uint32_t)rint(trackview.current_height() - NAME_HIGHLIGHT_SIZE));
-       _line->show();
-       _line->show_all_control_points();
+       _line->set_visibility (AutomationLine::VisibleAspects (AutomationLine::Line|AutomationLine::ControlPoints));
        _line->set_maximum_time (_region->length());
        _line->set_offset (_region->start ());
 }
@@ -116,7 +114,7 @@ AutomationRegionView::canvas_event (GdkEvent* ev)
                double y = ev->button.y;
 
                /* convert to item coordinates in the time axis view */
-               automation_view()->canvas_display()->w2i (x, y);
+               automation_view()->canvas_display()->canvas_to_item (x, y);
 
                /* clamp y */
                y = std::max (y, 0.0);