diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2006-03-05 19:39:16 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2006-03-05 19:39:16 +0000 |
commit | 5a39bf595c737dbb36666a9e718ac267e9131380 (patch) | |
tree | 12219a08eec7305a135eafff4210a037ff5f8804 /gtk2_ardour/editor_export_audio.cc | |
parent | caeb564748e7ece1025f55f005fe5591795ec234 (diff) |
export range markers patch (revisited), change selection model, copy-drag tempo+meter marker patch
git-svn-id: svn://localhost/trunk/ardour2@349 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_export_audio.cc')
-rw-r--r-- | gtk2_ardour/editor_export_audio.cc | 43 |
1 files changed, 35 insertions, 8 deletions
diff --git a/gtk2_ardour/editor_export_audio.cc b/gtk2_ardour/editor_export_audio.cc index 4964611db3..8ad432ece6 100644 --- a/gtk2_ardour/editor_export_audio.cc +++ b/gtk2_ardour/editor_export_audio.cc @@ -20,14 +20,18 @@ #include <unistd.h> #include <climits> -#include "export_dialog.h" + +#include <gtkmm/messagedialog.h> + +#include "export_session_dialog.h" +#include "export_region_dialog.h" +#include "export_range_markers_dialog.h" #include "editor.h" #include "public_editor.h" #include "selection.h" #include "time_axis_view.h" #include "audio_time_axis.h" #include "regionview.h" -#include "ardour_message.h" #include <pbd/pthread_utils.h> #include <ardour/types.h> @@ -57,12 +61,12 @@ Editor::export_selection () { if (session) { if (selection->time.empty()) { - ArdourMessage message (this, X_("norange"), _("There is no range to export.\n\nSelect a range using the range mouse mode")); + MessageDialog message (*this, _("There is no selection to export.\n\nSelect a selection using the range mouse mode")); + message.run (); return; } - export_range (selection->time.front().start, - selection->time.front().end); + export_range (selection->time.front().start, selection->time.front().end); } } @@ -71,7 +75,7 @@ Editor::export_range (jack_nframes_t start, jack_nframes_t end) { if (session) { if (export_dialog == 0) { - export_dialog = new ExportDialog (*this); + export_dialog = new ExportSessionDialog (*this); } export_dialog->connect_to_session (session); @@ -87,13 +91,36 @@ Editor::export_region () return; } - ExportDialog* dialog = new ExportDialog (*this, &clicked_regionview->region); + ExportDialog* dialog = new ExportRegionDialog (*this, &clicked_regionview->region); dialog->connect_to_session (session); - dialog->set_range (0, clicked_regionview->region.length()); + dialog->set_range ( + clicked_regionview->region.first_frame(), + clicked_regionview->region.last_frame()); dialog->start_export(); } +void +Editor::export_range_markers () +{ + if (session) { + + if (session->locations()->num_range_markers() == 0) { + MessageDialog message (*this, _("There are no ranges to export.\n\nCreate 1 or more ranges by dragging the mouse in the range bar")); + message.run (); + return; + } + + + if (export_range_markers_dialog == 0) { + export_range_markers_dialog = new ExportRangeMarkersDialog(*this); + } + + export_range_markers_dialog->connect_to_session (session); + export_range_markers_dialog->start_export(); + } +} + int Editor::write_region_selection (AudioRegionSelection& regions) { |