Change export dialog widget size allocation and make closing the exander make the window smaller also

(another attempt at fixing #4559


git-svn-id: svn://localhost/ardour2/branches/3.0@11447 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Sakari Bergen 2012-02-04 13:18:58 +00:00
parent 5e92f14dc5
commit a5b39d56df
2 changed files with 20 additions and 1 deletions

View File

@ -145,6 +145,12 @@ ExportDialog::init ()
progress_widget.hide_all();
}
void
ExportDialog::expanded_changed ()
{
set_resizable(advanced->get_expanded());
}
void
ExportDialog::init_gui ()
{
@ -183,9 +189,17 @@ ExportDialog::init_gui ()
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 = Gtk::manage (new Gtk::Expander (_("Advanced 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);
Pango::AttrList bold;

View File

@ -93,6 +93,8 @@ class ExportDialog : public ArdourDialog {
void init ();
void expanded_changed();
void notify_errors ();
void close_dialog ();
@ -114,6 +116,9 @@ class ExportDialog : public ArdourDialog {
/*** GUI components ***/
Glib::RefPtr<Gtk::SizeGroup> advanced_sizegroup;
Gtk::Expander * advanced;
/* Warning area */
Gtk::HBox warn_hbox;