summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-08-22 09:06:13 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-08-22 09:41:59 -0400
commitae32f44dc95801372b1a2a4549e0997550d16eef (patch)
tree254aacad1c908fb1610509c9b8dfbf8cb184b7b2
parent444b9e89033aa4171254a3622c583e1d791c7e9f (diff)
add insert-at combo selector for duplicate tracks dialog
-rw-r--r--gtk2_ardour/duplicate_routes_dialog.cc30
-rw-r--r--gtk2_ardour/duplicate_routes_dialog.h6
2 files changed, 36 insertions, 0 deletions
diff --git a/gtk2_ardour/duplicate_routes_dialog.cc b/gtk2_ardour/duplicate_routes_dialog.cc
index 05bb878f2c..3e34f9e381 100644
--- a/gtk2_ardour/duplicate_routes_dialog.cc
+++ b/gtk2_ardour/duplicate_routes_dialog.cc
@@ -49,6 +49,19 @@ DuplicateRouteDialog::DuplicateRouteDialog ()
playlist_button_box.pack_start (share_playlists_button, false, false);
playlist_button_box.show_all ();
+ insert_at_combo.append_text (_("First"));
+ insert_at_combo.append_text (_("Before Selection"));
+ insert_at_combo.append_text (_("After Selection"));
+ insert_at_combo.append_text (_("Last"));
+ insert_at_combo.set_active (3);
+
+ Gtk::Label* l = manage (new Label (_("Insert duplicates at: ")));
+ Gtk::HBox* b = manage (new HBox);
+ b->pack_start (*l, false, false, 10);
+ b->pack_start (insert_at_combo, true, true);
+
+ get_vbox()->pack_end (*b, false, false, 10);
+
get_vbox()->show_all ();
add_button (Stock::CANCEL, RESPONSE_CANCEL);
@@ -179,3 +192,20 @@ DuplicateRouteDialog::on_response (int response)
msg.run ();
}
}
+
+RouteDialogs::InsertAt
+DuplicateRouteDialog::insert_at ()
+{
+ using namespace RouteDialogs;
+
+ std::string str = insert_at_combo.get_active_text();
+
+ if (str == _("First")) {
+ return First;
+ } else if (str == _("After Selection")) {
+ return AfterSelection;
+ } else if (str == _("Before Selection")){
+ return BeforeSelection;
+ }
+ return Last;
+}
diff --git a/gtk2_ardour/duplicate_routes_dialog.h b/gtk2_ardour/duplicate_routes_dialog.h
index 531ce9ce94..0a942cfca8 100644
--- a/gtk2_ardour/duplicate_routes_dialog.h
+++ b/gtk2_ardour/duplicate_routes_dialog.h
@@ -22,6 +22,7 @@
#include <gtkmm/entry.h>
#include <gtkmm/box.h>
+#include <gtkmm/comboboxtext.h>
#include <gtkmm/radiobutton.h>
#include <gtkmm/adjustment.h>
#include <gtkmm/spinbutton.h>
@@ -29,6 +30,7 @@
#include "ardour/types.h"
#include "ardour_dialog.h"
+#include "route_dialogs.h"
namespace ARDOUR {
class Session;
@@ -58,7 +60,11 @@ class DuplicateRouteDialog : public ArdourDialog
void on_response (int);
uint32_t count() const;
+ RouteDialogs::InsertAt insert_at();
ARDOUR::PlaylistDisposition playlist_disposition() const;
+
+ private:
+ Gtk::ComboBoxText insert_at_combo;
};
#endif /* __gtk_ardour_duplicate_route_dialog_h__ */