diff options
author | Sakari Bergen <sakari.bergen@beatwaves.net> | 2012-02-04 13:18:58 +0000 |
---|---|---|
committer | Sakari Bergen <sakari.bergen@beatwaves.net> | 2012-02-04 13:18:58 +0000 |
commit | a5b39d56dfe5925238847cb2496aed3dbd1eb6fb (patch) | |
tree | c77561237ff473cba3976b7c1f9764852fd8b57f | |
parent | 5e92f14dc54e5735369d1d314c08ecec3be4f2f2 (diff) |
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
-rw-r--r-- | gtk2_ardour/export_dialog.cc | 16 | ||||
-rw-r--r-- | gtk2_ardour/export_dialog.h | 5 |
2 files changed, 20 insertions, 1 deletions
diff --git a/gtk2_ardour/export_dialog.cc b/gtk2_ardour/export_dialog.cc index 451f0c2b9a..9da584307b 100644 --- a/gtk2_ardour/export_dialog.cc +++ b/gtk2_ardour/export_dialog.cc @@ -146,6 +146,12 @@ ExportDialog::init () } void +ExportDialog::expanded_changed () +{ + set_resizable(advanced->get_expanded()); +} + +void ExportDialog::init_gui () { Gtk::Alignment * preset_align = Gtk::manage (new Gtk::Alignment()); @@ -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; diff --git a/gtk2_ardour/export_dialog.h b/gtk2_ardour/export_dialog.h index 73d11ecffd..835c220c23 100644 --- a/gtk2_ardour/export_dialog.h +++ b/gtk2_ardour/export_dialog.h @@ -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; |