Fix crash on double-click of show-audio button.
[dcpomatic.git] / src / wx / audio_dialog.h
index 1e4563972f095fd0d16da554cfaf5b9aac560fd3..b4257057dd6c4a2741301510fa478ddd85911992 100644 (file)
 */
 
 #include <boost/shared_ptr.hpp>
+#include <boost/signals2.hpp>
 #include <wx/wx.h>
+#include "lib/film.h"
+#include "lib/audio_analysis.h"
 
 class AudioPlot;
 class Film;
@@ -26,13 +29,23 @@ class Film;
 class AudioDialog : public wxDialog
 {
 public:
-       AudioDialog (wxWindow *, boost::shared_ptr<Film>);
+       AudioDialog (wxWindow *);
 
-       void set_film (boost::shared_ptr<Film>);
+       void set_content (boost::shared_ptr<AudioContent>);
 
 private:
-       void channel_changed (wxCommandEvent &);
-       
+       void content_changed (int);
+       void channel_clicked (wxCommandEvent &);
+       void type_clicked (wxCommandEvent &);
+       void smoothing_changed ();
+       void try_to_load_analysis ();
+       void analysis_finished ();
+
+       boost::shared_ptr<AudioContent> _content;
        AudioPlot* _plot;
-       wxChoice* _channel;
+       wxCheckBox* _channel_checkbox[MAX_AUDIO_CHANNELS];
+       wxCheckBox* _type_checkbox[AudioPoint::COUNT];
+       wxSlider* _smoothing;
+       boost::signals2::scoped_connection _content_changed_connection;
+       boost::signals2::scoped_connection _analysis_finished_connection;
 };