From ebd00236f876125e2b548fded78aee0801f71844 Mon Sep 17 00:00:00 2001 From: Colin Fletcher Date: Sun, 16 Jun 2013 18:47:16 +0100 Subject: Export dialogue visual re-arrangement Make the export dialogue into a tabbed notebook with three tabs: "File Format", "Timespan", and "Channels"/"Source". --- gtk2_ardour/export_dialog.cc | 68 ++++++++------------------------------------ 1 file changed, 12 insertions(+), 56 deletions(-) (limited to 'gtk2_ardour/export_dialog.cc') diff --git a/gtk2_ardour/export_dialog.cc b/gtk2_ardour/export_dialog.cc index a64acd1680..db3bbaf796 100644 --- a/gtk2_ardour/export_dialog.cc +++ b/gtk2_ardour/export_dialog.cc @@ -140,69 +140,26 @@ ExportDialog::init () progress_widget.hide_all(); } -void -ExportDialog::expanded_changed () -{ - set_resizable(advanced->get_expanded()); -} - void ExportDialog::init_gui () { Gtk::Alignment * preset_align = Gtk::manage (new Gtk::Alignment()); preset_align->add (*preset_selector); preset_align->set_padding (0, 12, 0, 0); - get_vbox()->pack_start (*preset_align, false, false, 0); - - Gtk::VPaned * advanced_paned = Gtk::manage (new Gtk::VPaned()); - - Gtk::VBox* timespan_vbox = Gtk::manage (new Gtk::VBox()); - timespan_vbox->set_spacing (12); - timespan_vbox->set_border_width (12); - - Gtk::Alignment * timespan_align = Gtk::manage (new Gtk::Alignment()); - timespan_label = Gtk::manage (new Gtk::Label (_("Time Span"), Gtk::ALIGN_LEFT)); - timespan_align->add (*timespan_selector); - timespan_align->set_padding (0, 0, 18, 0); - timespan_vbox->pack_start (*timespan_label, false, false, 0); - timespan_vbox->pack_start (*timespan_align, true, true, 0); - advanced_paned->pack1(*timespan_vbox, true, false); - - Gtk::VBox* channels_vbox = Gtk::manage (new Gtk::VBox()); - channels_vbox->set_spacing (12); - channels_vbox->set_border_width (12); - - Gtk::Alignment * channels_align = Gtk::manage (new Gtk::Alignment()); - channels_label = Gtk::manage (new Gtk::Label (_("Channels"), Gtk::ALIGN_LEFT)); - channels_align->add (*channel_selector); - channels_align->set_padding (0, 12, 18, 0); - channels_vbox->pack_start (*channels_label, false, false, 0); - channels_vbox->pack_start (*channels_align, true, true, 0); - advanced_paned->pack2(*channels_vbox, channel_selector_is_expandable(), false); - - get_vbox()->pack_start (*file_notebook, false, false, 0); - get_vbox()->pack_start (warning_widget, false, false, 0); - get_vbox()->pack_start (progress_widget, false, false, 0); - - advanced = Gtk::manage (new Gtk::Expander (_("Time span and channel options"))); - advanced->property_expanded().signal_changed().connect( - sigc::mem_fun(*this, &ExportDialog::expanded_changed)); - advanced->add (*advanced_paned); - - if (channel_selector_is_expandable()) { - advanced_sizegroup = Gtk::SizeGroup::create(Gtk::SIZE_GROUP_VERTICAL); - advanced_sizegroup->add_widget(*timespan_selector); - advanced_sizegroup->add_widget(*channel_selector); - } - get_vbox()->pack_start (*advanced, true, true); + Gtk::VBox * file_format_selector = Gtk::manage (new Gtk::VBox()); + file_format_selector->set_homogeneous (false); + file_format_selector->pack_start (*preset_align, false, false, 0); + file_format_selector->pack_start (*file_notebook, false, false, 0); - Pango::AttrList bold; - Pango::Attribute b = Pango::Attribute::create_attr_weight (Pango::WEIGHT_BOLD); - bold.insert (b); + export_notebook.append_page (*file_format_selector, _("File format")); + export_notebook.append_page (*timespan_selector, _("Time Span")); + export_notebook.append_page (*channel_selector, _("Channels")); + + get_vbox()->pack_start (export_notebook, true, true, 0); + get_vbox()->pack_end (warning_widget, false, false, 0); + get_vbox()->pack_end (progress_widget, false, false, 0); - timespan_label->set_attributes (bold); - channels_label->set_attributes (bold); } void @@ -439,8 +396,7 @@ void ExportRegionDialog::init_gui () { ExportDialog::init_gui (); - - channels_label->set_text (_("Source")); + export_notebook.set_tab_label_text(*export_notebook.get_nth_page(2), _("Source")); } void -- cgit v1.2.3