summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_audiotrack.cc
diff options
context:
space:
mode:
authorTaybin Rutkin <taybin@taybin.com>2005-09-25 18:42:24 +0000
committerTaybin Rutkin <taybin@taybin.com>2005-09-25 18:42:24 +0000
commit209d967b1bb80a9735d690d8f4f0455ecb9970ca (patch)
tree9d76ddcd7c1ac9d91bb2b1a33d31b66ce4ded5de /gtk2_ardour/editor_audiotrack.cc
parente4b9aed743fc765219ac775905a221c017c88fba (diff)
Initial import of gtk2_ardour.
git-svn-id: svn://localhost/trunk/ardour2@24 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_audiotrack.cc')
-rw-r--r--gtk2_ardour/editor_audiotrack.cc65
1 files changed, 65 insertions, 0 deletions
diff --git a/gtk2_ardour/editor_audiotrack.cc b/gtk2_ardour/editor_audiotrack.cc
new file mode 100644
index 0000000000..b9ae734bde
--- /dev/null
+++ b/gtk2_ardour/editor_audiotrack.cc
@@ -0,0 +1,65 @@
+#include <ardour/location.h>
+#include <ardour/diskstream.h>
+
+#include "editor.h"
+#include "editing.h"
+#include "audio_time_axis.h"
+#include "regionview.h"
+#include "selection.h"
+
+using namespace ARDOUR;
+
+void
+Editor::set_route_loop_selection ()
+{
+ if (session == 0 || selection->time.empty()) {
+ return;
+ }
+
+ jack_nframes_t start = selection->time[clicked_selection].start;
+ jack_nframes_t end = selection->time[clicked_selection].end;
+
+ Location* loc = transport_loop_location();
+
+ if (loc) {
+
+ loc->set (start, end);
+
+ // enable looping, reposition and start rolling
+ session->request_auto_loop (true);
+ session->request_locate (loc->start(), true);
+ }
+
+}
+
+void
+Editor::set_show_waveforms (bool yn)
+{
+ AudioTimeAxisView* atv;
+
+ if (_show_waveforms != yn) {
+ _show_waveforms = yn;
+ for (TrackViewList::iterator i = track_views.begin(); i != track_views.end(); ++i) {
+ if ((atv = dynamic_cast<AudioTimeAxisView*>(*i)) != 0) {
+ atv->set_show_waveforms (yn);
+ }
+ }
+ DisplayControlChanged (Editing::ShowWaveforms);
+ }
+}
+
+void
+Editor::set_show_waveforms_recording (bool yn)
+{
+ AudioTimeAxisView* atv;
+
+ if (_show_waveforms_recording != yn) {
+ _show_waveforms_recording = yn;
+ for (TrackViewList::iterator i = track_views.begin(); i != track_views.end(); ++i) {
+ if ((atv = dynamic_cast<AudioTimeAxisView*>(*i)) != 0) {
+ atv->set_show_waveforms_recording (yn);
+ }
+ }
+ DisplayControlChanged (Editing::ShowWaveformsRecording);
+ }
+}