summaryrefslogtreecommitdiff
path: root/gtk2_ardour/audio_streamview.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/audio_streamview.cc')
-rw-r--r--gtk2_ardour/audio_streamview.cc42
1 files changed, 41 insertions, 1 deletions
diff --git a/gtk2_ardour/audio_streamview.cc b/gtk2_ardour/audio_streamview.cc
index 185a961064..d5760c7bb6 100644
--- a/gtk2_ardour/audio_streamview.cc
+++ b/gtk2_ardour/audio_streamview.cc
@@ -383,7 +383,47 @@ AudioStreamView::set_waveform_shape (WaveformShape shape)
arv->set_waveform_shape (shape);
}
}
-
+
+WaveformShape
+AudioStreamView::get_waveform_shape () const
+{
+ // assumes that the first represents all for our purposes
+
+ if (region_views.size() > 0) {
+ AudioRegionView* const arv = dynamic_cast<AudioRegionView*>(region_views.front());
+ if (arv) {
+ if (arv->waveform_rectified())
+ return Rectified;
+ }
+ }
+ return Traditional;
+}
+
+void
+AudioStreamView::set_waveform_scale (WaveformScale scale)
+{
+ for (RegionViewList::iterator i = region_views.begin(); i != region_views.end(); ++i) {
+ AudioRegionView* const arv = dynamic_cast<AudioRegionView*>(*i);
+ if (arv)
+ arv->set_waveform_scale (scale);
+ }
+}
+
+WaveformScale
+AudioStreamView::get_waveform_scale () const
+{
+ // assumes that the first represents all for our purposes
+
+ if (region_views.size() > 0) {
+ AudioRegionView* const arv = dynamic_cast<AudioRegionView*>(region_views.front());
+ if (arv) {
+ if (arv->waveform_logscaled())
+ return LogWaveform;
+ }
+ }
+ return LinearWaveform;
+}
+
void
AudioStreamView::setup_rec_box ()
{