X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fnormalize_dialog.cc;h=9872bcbc35223fe8fd8526fdd89d5ef76f439b97;hb=20ea90a186748f34061fec323faa74f084c7937c;hp=716bfa7c3962b8fd34ca583f665fa06b0149663c;hpb=6f9e9ad23e98ac1b3f52065ad53641cbf4c38f22;p=ardour.git diff --git a/gtk2_ardour/normalize_dialog.cc b/gtk2_ardour/normalize_dialog.cc index 716bfa7c39..9872bcbc35 100644 --- a/gtk2_ardour/normalize_dialog.cc +++ b/gtk2_ardour/normalize_dialog.cc @@ -23,17 +23,19 @@ #include #include #include "normalize_dialog.h" +#include "i18n.h" using namespace Gtk; double NormalizeDialog::_last_normalization_value = 0; +bool NormalizeDialog::_last_normalize_individually = true; NormalizeDialog::NormalizeDialog (bool more_than_one) : ArdourDialog (more_than_one ? _("Normalize regions") : _("Normalize region")) , _normalize_individually (0) { get_vbox()->set_spacing (12); - + HBox* hbox = manage (new HBox); hbox->set_spacing (6); hbox->set_border_width (6); @@ -42,6 +44,7 @@ NormalizeDialog::NormalizeDialog (bool more_than_one) _spin->set_range (-112, 0); _spin->set_increments (0.1, 1); _spin->set_value (_last_normalization_value); + _spin->set_activates_default (); hbox->pack_start (*_spin, false, false); hbox->pack_start (*manage (new Label (_("dbFS"))), false, false); get_vbox()->pack_start (*hbox); @@ -55,6 +58,9 @@ NormalizeDialog::NormalizeDialog (bool more_than_one) RadioButton* b = manage (new RadioButton (group, _("Normalize each region using the peak value of all regions"))); vbox->pack_start (*b); + _normalize_individually->set_active (_last_normalize_individually); + b->set_active (!_last_normalize_individually); + get_vbox()->pack_start (*vbox); } @@ -62,9 +68,10 @@ NormalizeDialog::NormalizeDialog (bool more_than_one) get_vbox()->pack_start (*_progress_bar); show_all (); - + add_button (Stock::CANCEL, RESPONSE_CANCEL); add_button (_("Normalize"), RESPONSE_ACCEPT); + set_default_response (RESPONSE_ACCEPT); signal_response().connect (sigc::mem_fun (*this, &NormalizeDialog::button_clicked)); } @@ -96,6 +103,9 @@ NormalizeDialog::run () { int const r = ArdourDialog::run (); _last_normalization_value = target (); + if (_normalize_individually) { + _last_normalize_individually = _normalize_individually->get_active (); + } return r; }