X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fanalysis_window.h;h=af540b9173e89c5b2423e97778568bb089c4e422;hb=9a4f205b6ef6fec779833ea56a3202c058317ddd;hp=cd1243bb6ac63c0946556f931f6679db77d32123;hpb=868f557f2612903f72614a2b3a317c7a528188d1;p=ardour.git diff --git a/gtk2_ardour/analysis_window.h b/gtk2_ardour/analysis_window.h index cd1243bb6a..af540b9173 100644 --- a/gtk2_ardour/analysis_window.h +++ b/gtk2_ardour/analysis_window.h @@ -31,84 +31,94 @@ #include #include #include +#include #include -#include +#include +#include "ardour/session_handle.h" -#include "ardour_dialog.h" #include "fft_graph.h" #include "fft_result.h" +namespace ARDOUR { + class Session; +} -class AnalysisWindow : public ArdourDialog + +class AnalysisWindow : public Gtk::Window, public ARDOUR::SessionHandlePtr { - public: - AnalysisWindow (); - ~AnalysisWindow (); - - void set_rangemode(); - void set_regionmode(); - - void track_list_row_changed(const Gtk::TreeModel::Path& path, const Gtk::TreeModel::iterator& iter); - - void analyze (); - - private: - - void clear_tracklist(); - - void source_selection_changed (Gtk::RadioButton *); - void display_model_changed (Gtk::RadioButton *); - - void analyze_data (Gtk::Button *); - - struct TrackListColumns : public Gtk::TreeModel::ColumnRecord { - public: - TrackListColumns () { - add (trackname); +public: + AnalysisWindow (); + ~AnalysisWindow (); + + void set_rangemode(); + void set_regionmode(); + + void track_list_row_changed(const Gtk::TreeModel::Path& path, const Gtk::TreeModel::iterator& iter); + + void analyze (); + +private: + void clear_tracklist(); + + void source_selection_changed (Gtk::RadioButton *); + void display_model_changed (Gtk::RadioButton *); + void show_minmax_changed (); + void show_normalized_changed (); + + void analyze_data (Gtk::Button *); + + struct TrackListColumns : public Gtk::TreeModel::ColumnRecord { + public: + TrackListColumns () { + add (trackname); add (visible); add (color); add (graph); - } - Gtk::TreeModelColumn trackname; - Gtk::TreeModelColumn visible; - Gtk::TreeModelColumn color; - Gtk::TreeModelColumn graph; - }; - - // Packing essentials - Gtk::HBox hbox; - Gtk::VBox vbox; - - // Left side - Glib::RefPtr tlmodel; - TrackListColumns tlcols; - Gtk::TreeView track_list; - - Gtk::Label source_selection_label; - - Gtk::RadioButton source_selection_ranges_rb; - Gtk::RadioButton source_selection_regions_rb; - - Gtk::HSeparator hseparator1; - - Gtk::Label display_model_label; - Gtk::RadioButton display_model_composite_separate_rb; - Gtk::RadioButton display_model_composite_all_tracks_rb; - - Gtk::HSeparator hseparator2; - - Gtk::Button refresh_button; - - // The graph - FFTGraph fft_graph; - - bool track_list_ready; - Glib::Mutex track_list_lock; - - friend class FFTGraph; + } + Gtk::TreeModelColumn trackname; + Gtk::TreeModelColumn visible; + Gtk::TreeModelColumn color; + Gtk::TreeModelColumn graph; + }; + + // Packing essentials + Gtk::HBox hbox; + Gtk::VBox vbox; + + // Left side + Glib::RefPtr tlmodel; + TrackListColumns tlcols; + Gtk::TreeView track_list; + + Gtk::Label source_selection_label; + + + Gtk::RadioButton source_selection_ranges_rb; + Gtk::RadioButton source_selection_regions_rb; + + Gtk::HSeparator hseparator1; + + Gtk::Label display_model_label; + Gtk::RadioButton display_model_composite_separate_rb; + Gtk::RadioButton display_model_composite_all_tracks_rb; + + Gtk::Button refresh_button; + + + Gtk::CheckButton show_minmax_button; + Gtk::CheckButton show_normalized_button; + + + // The graph + FFTGraph fft_graph; + + bool track_list_ready; + Glib::Threads::Mutex track_list_lock; + + friend class FFTGraph; }; #endif // __ardour_analysis_window_h