From c3a00bf1e9662751f65b0dc22b27bc1a6ddcc1cd Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 2 Aug 2006 02:03:50 +0000 Subject: [PATCH] Fix for all regions having a "speed mismatch" (showing a * in the regionview name) Fix for region stacking problem (leftmost region view grayed out and un selectable) git-svn-id: svn://localhost/ardour2/trunk@745 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/audio_region_view.cc | 6 ++++-- gtk2_ardour/streamview.cc | 5 ++++- libs/ardour/audioregion.cc | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc index a9a758481f..feb8f4fd0b 100644 --- a/gtk2_ardour/audio_region_view.cc +++ b/gtk2_ardour/audio_region_view.cc @@ -992,12 +992,14 @@ AudioRegionView::set_waveform_shape (WaveformShape shape) GhostRegion* AudioRegionView::add_ghost (AutomationTimeAxisView& atv) { - RouteTimeAxisView& myatv (*(dynamic_cast(&trackview))); // ick + RouteTimeAxisView* rtv = dynamic_cast(&trackview); + assert(rtv); + double unit_position = _region.position () / samples_per_unit; GhostRegion* ghost = new GhostRegion (atv, unit_position); uint32_t nchans; - nchans = myatv.get_diskstream()->n_channels(); + nchans = rtv->get_diskstream()->n_channels(); for (uint32_t n = 0; n < nchans; ++n) { diff --git a/gtk2_ardour/streamview.cc b/gtk2_ardour/streamview.cc index 13d07f6cb1..d1d163d7a2 100644 --- a/gtk2_ardour/streamview.cc +++ b/gtk2_ardour/streamview.cc @@ -302,7 +302,10 @@ StreamView::region_layered (RegionView* rv) get events - the parent group does instead ... */ - rv->get_canvas_group()->raise (rv->region().layer() + 1); + /* this used to be + 1, but regions to the left ended up below + ..something.. and couldn't receive events. why? good question. + */ + rv->get_canvas_group()->raise (rv->region().layer() + 2); } void diff --git a/libs/ardour/audioregion.cc b/libs/ardour/audioregion.cc index 51c7612137..20d1dbfbd6 100644 --- a/libs/ardour/audioregion.cc +++ b/libs/ardour/audioregion.cc @@ -1379,7 +1379,7 @@ AudioRegion::speed_mismatch (float sr) const float fsr = sources.front()->sample_rate(); - return fsr == sr; + return fsr != sr; } extern "C" {