summaryrefslogtreecommitdiff
path: root/gtk2_ardour/duplicate_routes_dialog.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2015-11-14 11:05:15 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2015-11-14 11:05:15 -0500
commit456b6adf2b3f82abf20c823fd0cd28cf7e434b7a (patch)
treecbe26defe46c2efa28f60cd0c25af4be5210c126 /gtk2_ardour/duplicate_routes_dialog.cc
parent7598520fa6d3635449637c3377de3eb0f72278db (diff)
tweak duplicate routes dialog appearance depending on whether or not busses/tracks are the target
Diffstat (limited to 'gtk2_ardour/duplicate_routes_dialog.cc')
-rw-r--r--gtk2_ardour/duplicate_routes_dialog.cc26
1 files changed, 19 insertions, 7 deletions
diff --git a/gtk2_ardour/duplicate_routes_dialog.cc b/gtk2_ardour/duplicate_routes_dialog.cc
index 17d2acd62f..d6a90cf57c 100644
--- a/gtk2_ardour/duplicate_routes_dialog.cc
+++ b/gtk2_ardour/duplicate_routes_dialog.cc
@@ -32,17 +32,15 @@ DuplicateRouteDialog::DuplicateRouteDialog ()
, count_spinner (count_adjustment)
, count_label (_("Duplicate each track/bus this number of times"))
{
- playlist_button_box.pack_start (copy_playlists_button, false, false);
- playlist_button_box.pack_start (new_playlists_button, false, false);
- playlist_button_box.pack_start (share_playlists_button, false, false);
-
- get_vbox()->pack_start (playlist_button_box, false, false);
-
count_box.pack_start (count_label, false, false);
count_box.pack_start (count_spinner, false, false);
-
get_vbox()->pack_start (count_box, false, false, 20);
+ playlist_button_box.pack_start (copy_playlists_button, false, false);
+ playlist_button_box.pack_start (new_playlists_button, false, false);
+ playlist_button_box.pack_start (share_playlists_button, false, false);
+ playlist_button_box.show_all ();
+
get_vbox()->show_all ();
add_button (Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL);
@@ -53,6 +51,20 @@ DuplicateRouteDialog::~DuplicateRouteDialog ()
{
}
+void
+DuplicateRouteDialog::setup (uint32_t ntracks, uint32_t nbusses)
+{
+ /* XXX grrr. Gtk Boxes do not shrink when children are removed,
+ which is what we really want to happen here.
+ */
+
+ if (ntracks == 0) {
+ get_vbox()->remove (playlist_button_box);
+ } else {
+ get_vbox()->pack_end (playlist_button_box, false, false);
+ }
+}
+
uint32_t
DuplicateRouteDialog::count() const
{