diff options
author | Robin Gareus <robin@gareus.org> | 2015-04-28 16:07:57 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-04-28 16:08:20 +0200 |
commit | 9a94688d116b14d046aeb312753d5ec2ef9a2444 (patch) | |
tree | 10617a7d06cbdaa7f75a08fefb7444261f0c084e /gtk2_ardour | |
parent | e9bb1dc2bf72a3d27304595717b18105590872ac (diff) |
make tape tracks draw something.
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/tape_region_view.cc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/gtk2_ardour/tape_region_view.cc b/gtk2_ardour/tape_region_view.cc index f40ccb6014..2d71bdf5ab 100644 --- a/gtk2_ardour/tape_region_view.cc +++ b/gtk2_ardour/tape_region_view.cc @@ -82,12 +82,23 @@ void TapeAudioRegionView::update (uint32_t /*n*/) { /* check that all waves are build and ready */ - if (!tmp_waves.empty()) { return; } ENSURE_GUI_THREAD (*this, &TapeAudioRegionView::update, n); // CAIROCANVAS - // waves[n]->rebuild (); + + /* this is a quick hack to draw something (abuse gain_changed to force + * an image-cache invalidation. + * + * TODO: ArdourCanvas::WaveView needs an API to look up the specific channel "n" + * and a special case to not only invalidate the cache but re-expose the + * waveform. e.g. + * + * waves[m]->rebuild(); // where 'm' corresponds to channel 'n'. + */ + for (uint32_t i = 0; i < waves.size(); ++i) { + waves[i]->gain_changed (); + } } |