Fix control sensitivity in various places.
[dcpomatic.git] / src / wx / audio_panel.cc
index a2ede0bd64ba63e15e4e4e82b12513d995380c61..ddee3157f069374d15d7f1f205ce410d6a8706d6 100644 (file)
@@ -272,17 +272,19 @@ AudioPanel::setup_sensitivity ()
        if (_reference->GetValue ()) {
                _gain->wrapped()->Enable (false);
                _gain_calculate_button->Enable (false);
+               _show->Enable (true);
                _peak->Enable (false);
                _delay->wrapped()->Enable (false);
                _mapping->Enable (false);
                _description->Enable (false);
        } else {
-               _gain->wrapped()->Enable (true);
+               _gain->wrapped()->Enable (sel.size() == 1);
                _gain_calculate_button->Enable (sel.size() == 1);
-               _peak->Enable (true);
-               _delay->wrapped()->Enable (true);
+               _show->Enable (sel.size() == 1);
+               _peak->Enable (sel.size() == 1);
+               _delay->wrapped()->Enable (sel.size() == 1);
                _mapping->Enable (sel.size() == 1);
-               _description->Enable (true);
+               _description->Enable (sel.size() == 1);
        }
 }
 
@@ -362,3 +364,13 @@ AudioPanel::reference_clicked ()
 
        d->set_reference_audio (_reference->GetValue ());
 }
+
+void
+AudioPanel::set_film (shared_ptr<Film>)
+{
+       /* We are changing film, so destroy any audio dialog for the old one */
+       if (_audio_dialog) {
+               _audio_dialog->Destroy ();
+               _audio_dialog = 0;
+       }
+}