Improve usage of expanded window space in the export dialog + put the "advanced" stuff in a Gtk::VPaned

git-svn-id: svn://localhost/ardour2/branches/3.0@11400 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Sakari Bergen
2012-01-31 20:42:08 +00:00
parent 3b5787c461
commit 8b1e5eca1d
2 changed files with 24 additions and 10 deletions

View File

@@ -153,30 +153,38 @@ ExportDialog::init_gui ()
preset_align->set_padding (0, 12, 0, 0);
get_vbox()->pack_start (*preset_align, false, false, 0);
Gtk::VBox* advanced_vbox = Gtk::manage (new Gtk::VBox());
advanced_vbox->set_spacing (12);
advanced_vbox->set_border_width (12);
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, 12, 18, 0);
advanced_vbox->pack_start (*timespan_label, false, false, 0);
advanced_vbox->pack_start (*timespan_align, true, true, 0);
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);
advanced_vbox->pack_start (*channels_label, false, false, 0);
advanced_vbox->pack_start (*channels_align, false, false, 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);
Gtk::Expander* advanced = Gtk::manage (new Gtk::Expander (_("Advanced options")));
advanced->add (*advanced_vbox);
advanced->add (*advanced_paned);
get_vbox()->pack_start (*advanced, true, true);

View File

@@ -75,6 +75,9 @@ class ExportDialog : public ArdourDialog {
// Must initialize all the shared_ptrs below
virtual void init_components ();
// Override if the channel selector should not be grown
virtual bool channel_selector_is_expandable() { return true; }
boost::scoped_ptr<ExportPresetSelector> preset_selector;
boost::scoped_ptr<ExportTimespanSelector> timespan_selector;
boost::scoped_ptr<ExportChannelSelector> channel_selector;
@@ -148,7 +151,7 @@ class ExportRangeDialog : public ExportDialog
private:
void init_components ();
std::string range_id;
std::string range_id;
};
class ExportSelectionDialog : public ExportDialog
@@ -165,6 +168,9 @@ class ExportRegionDialog : public ExportDialog
public:
ExportRegionDialog (PublicEditor & editor, ARDOUR::AudioRegion const & region, ARDOUR::AudioTrack & track);
protected:
virtual bool channel_selector_is_expandable() { return false; }
private:
void init_gui ();
void init_components ();