diff options
author | Doug McLain <doug@nostar.net> | 2008-05-22 22:42:27 +0000 |
---|---|---|
committer | Doug McLain <doug@nostar.net> | 2008-05-22 22:42:27 +0000 |
commit | c271a302734e8a171288d00515c4b1bb30e7e857 (patch) | |
tree | 192679d8256c888fac85064c6c0b4d9c61484866 /gtk2_ardour/audio_streamview.cc | |
parent | 5439c0c46c6c0c748366d17cbe4255ef446e9c26 (diff) |
Remove sigc 2.0.18
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3399 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/audio_streamview.cc')
-rw-r--r-- | gtk2_ardour/audio_streamview.cc | 37 |
1 files changed, 32 insertions, 5 deletions
diff --git a/gtk2_ardour/audio_streamview.cc b/gtk2_ardour/audio_streamview.cc index 344b8f4734..9666f7a33f 100644 --- a/gtk2_ardour/audio_streamview.cc +++ b/gtk2_ardour/audio_streamview.cc @@ -57,6 +57,7 @@ AudioStreamView::AudioStreamView (AudioTimeAxisView& tv) : StreamView (tv) { crossfades_visible = true; + outline_region = false; _waveform_scale = LinearWaveform; _waveform_shape = Traditional; @@ -469,7 +470,7 @@ AudioStreamView::set_waveform_scale (WaveformScale scale) void AudioStreamView::setup_rec_box () { - // cerr << _trackview.name() << " streamview SRB\n"; + cerr << _trackview.name() << " streamview SRB region_views.size() = " << region_views.size() << endl; if (_trackview.session().transport_rolling()) { @@ -478,7 +479,7 @@ AudioStreamView::setup_rec_box () if (!rec_active && _trackview.session().record_status() == Session::Recording && _trackview.get_diskstream()->record_enabled()) { - + cerr << "rec_active = 0" << endl; if (_trackview.audio_track()->mode() == Normal && use_rec_regions && rec_regions.size() == rec_rects.size()) { /* add a new region, but don't bother if they set use_rec_regions mid-record */ @@ -565,11 +566,11 @@ AudioStreamView::setup_rec_box () } else if (rec_active && (_trackview.session().record_status() != Session::Recording || !_trackview.get_diskstream()->record_enabled())) { - + cerr << "rec_active = 1" << endl; screen_update_connection.disconnect(); rec_active = false; rec_updating = false; - + outline_region = true; } } else { @@ -656,7 +657,7 @@ void AudioStreamView::update_rec_regions () { if (use_rec_regions) { - + cerr << "AudioStreamView::update_rec_regions () outline_region = " << outline_region << endl; uint32_t n = 0; for (list<boost::shared_ptr<Region> >::iterator iter = rec_regions.begin(); iter != rec_regions.end(); n++) { @@ -687,6 +688,15 @@ AudioStreamView::update_rec_regions () if (nlen != region->length()) { + if (outline_region) { + for (list<RegionView *>::iterator i = region_views.begin(); i != region_views.end(); ++i) { + if ((*i)->region() == region) { + (*i)->outline_entire_box(); + outline_region = false; + } + } + } + region->freeze (); region->set_position (_trackview.get_diskstream()->get_capture_start_frame(n), this); region->set_length (nlen, this); @@ -695,6 +705,14 @@ AudioStreamView::update_rec_regions () if (origlen == 1) { /* our special initial length */ add_region_view_internal (region, false, true); + if (outline_region) { + outline_region = false; + for (list<RegionView *>::iterator i = region_views.begin(); i != region_views.end(); ++i) { + if ((*i)->region() == region) { + (*i)->outline_entire_box(); + } + } + } } /* also update rect */ @@ -712,6 +730,15 @@ AudioStreamView::update_rec_regions () if (region->source(0)->length() >= region->start() + nlen) { + if (outline_region) { + for (list<RegionView *>::iterator i = region_views.begin(); i != region_views.end(); ++i) { + if ((*i)->region() == region) { + (*i)->outline_entire_box(); + outline_region = false; + } + } + } + region->freeze (); region->set_position (_trackview.get_diskstream()->get_capture_start_frame(n), this); region->set_length (nlen, this); |