diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-08-19 01:04:59 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-08-19 01:29:04 +0100 |
| commit | 6c7489e5d778d3e71065d88a094a7383ba2c117d (patch) | |
| tree | e3f05ad03095d88d297c7d61e03e265d28a97fa3 /src/wx/audio_dialog.cc | |
| parent | 9a27d60ea7888d300a5a2414a477091428589b82 (diff) | |
Replace May/Done/NotDone signal sets with one signal and extend
this treatment to anything that caused Player::setup_pieces. This should
fix out-of-sequence Player emissions caused by setup_pieces being called
by one thread while the butler is calling pass().
Diffstat (limited to 'src/wx/audio_dialog.cc')
| -rw-r--r-- | src/wx/audio_dialog.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/wx/audio_dialog.cc b/src/wx/audio_dialog.cc index 8c015ab68..e1f7c15a6 100644 --- a/src/wx/audio_dialog.cc +++ b/src/wx/audio_dialog.cc @@ -150,7 +150,7 @@ AudioDialog::AudioDialog (wxWindow* parent, shared_ptr<Film> film, shared_ptr<Co overall_sizer->Layout (); overall_sizer->SetSizeHints (this); - _film_connection = film->ContentChanged.connect (boost::bind (&AudioDialog::content_changed, this, _2)); + _film_connection = film->ContentChange.connect (boost::bind (&AudioDialog::content_change, this, _1, _3)); DCPOMATIC_ASSERT (film->directory()); SetTitle(wxString::Format(_("DCP-o-matic audio - %s"), std_to_wx(film->directory().get().string()))); @@ -282,8 +282,12 @@ AudioDialog::channel_clicked (wxCommandEvent& ev) } void -AudioDialog::content_changed (int p) +AudioDialog::content_change (ChangeType type, int p) { + if (type != CHANGE_TYPE_DONE) { + return; + } + if (p == AudioContentProperty::STREAMS) { try_to_load_analysis (); } else if (p == AudioContentProperty::GAIN) { |
