Logo Search packages:      
Sourcecode: ardour version File versions

editor_audiotrack.cc

/*
    Copyright (C) 2000-2007 Paul Davis 

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

*/

#include <ardour/location.h>
#include <ardour/audio_diskstream.h>

#include "editor.h"
#include "editing.h"
#include "audio_time_axis.h"
#include "region_view.h"
#include "selection.h"

using namespace ARDOUR;
using namespace PBD;

void
Editor::set_route_loop_selection ()
{
      if (session == 0 || selection->time.empty()) {
            return;
      }

      nframes_t start = selection->time[clicked_selection].start;
      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_play_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);
                  }
            }
      }
}

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);
                  }
            }
      }
}

Generated by  Doxygen 1.6.0   Back to index