diff options
Diffstat (limited to 'src/wx/audio_dialog.cc')
| -rw-r--r-- | src/wx/audio_dialog.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/wx/audio_dialog.cc b/src/wx/audio_dialog.cc index 11efc153c..32864ca15 100644 --- a/src/wx/audio_dialog.cc +++ b/src/wx/audio_dialog.cc @@ -54,6 +54,9 @@ AudioDialog::AudioDialog (wxWindow* parent, boost::shared_ptr<Film> film) void AudioDialog::set_film (boost::shared_ptr<Film> f) { + _film_connection.disconnect (); + _film = f; + shared_ptr<AudioAnalysis> a; try { @@ -70,6 +73,8 @@ AudioDialog::set_film (boost::shared_ptr<Film> f) } _channel->SetSelection (0); + + _film_connection = f->Changed.connect (bind (&AudioDialog::film_changed, this, _1)); } void @@ -77,3 +82,11 @@ AudioDialog::channel_changed (wxCommandEvent &) { _plot->set_channel (_channel->GetSelection ()); } + +void +AudioDialog::film_changed (Film::Property p) +{ + if (p == Film::AUDIO_GAIN) { + _plot->set_gain (_film->audio_gain ()); + } +} |
