X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Faudio_region_editor.h;h=dd65a3fb31d48f4f919afb343b9e0208ce1cbcd2;hb=6a61ddb3af8225608c7615d199a54b3ad22f784b;hp=f4c99917d8606c4ca13985fefad0b894a7bec5c8;hpb=f6fdd8dcbf41f864e9f0cc32dabe81fe3533ddfe;p=ardour.git diff --git a/gtk2_ardour/audio_region_editor.h b/gtk2_ardour/audio_region_editor.h index f4c99917d8..dd65a3fb31 100644 --- a/gtk2_ardour/audio_region_editor.h +++ b/gtk2_ardour/audio_region_editor.h @@ -35,7 +35,9 @@ #include #include -#include + +#include "pbd/signals.h" +#include "pbd/crossthread.h" #include "audio_clock.h" #include "ardour_dialog.h" @@ -51,74 +53,32 @@ class AudioRegionView; class AudioRegionEditor : public RegionEditor { public: - AudioRegionEditor (ARDOUR::Session*, boost::shared_ptr, AudioRegionView& rv); + AudioRegionEditor (ARDOUR::Session*, boost::shared_ptr); ~AudioRegionEditor (); - private: - boost::shared_ptr _region; - AudioRegionView& _region_view; - - void connect_editor_events (); + void peak_amplitude_thread (); - Gtk::Label name_label; - Gtk::Entry name_entry; - Gtk::HBox name_hbox; - - Gtk::HBox top_row_hbox; - Gtk::HBox top_row_button_hbox; + private: - Gtk::ToggleButton audition_button; + void region_changed (PBD::PropertyChange const &); - Gtk::HBox lower_hbox; + void gain_changed (); + void gain_adjustment_changed (); - Gtk::Table time_table; + boost::shared_ptr _audio_region; - Gtk::Label position_label; - Gtk::Label end_label; - Gtk::Label length_label; - Gtk::Label sync_relative_label; - Gtk::Label sync_absolute_label; - Gtk::Label start_label; Gtk::Label gain_label; - - AudioClock position_clock; - AudioClock end_clock; - AudioClock length_clock; - AudioClock sync_offset_relative_clock; ///< sync offset relative to the start of the region - AudioClock sync_offset_absolute_clock; ///< sync offset relative to the start of the timeline - AudioClock start_clock; Gtk::Adjustment gain_adjustment; Gtk::SpinButton gain_entry; - Gtk::HSeparator sep3; - Gtk::VSeparator sep1; - Gtk::VSeparator sep2; - - void region_changed (ARDOUR::Change); - void bounds_changed (ARDOUR::Change); - void name_changed (); - void gain_changed (); - - void audition_state_changed (bool); - - void activation (); - - void name_entry_changed (); - void position_clock_changed (); - void end_clock_changed (); - void length_clock_changed (); - void sync_offset_absolute_clock_changed (); - void sync_offset_relative_clock_changed (); - void gain_adjustment_changed (); - - void audition_button_toggled (); - - gint bpressed (GdkEventButton* ev, Gtk::SpinButton* but, void (AudioRegionEditor::*pmf)()); - gint breleased (GdkEventButton* ev, Gtk::SpinButton* but, void (AudioRegionEditor::*pmf)()); - - bool on_delete_event (GdkEventAny *); + Gtk::Label _peak_amplitude_label; + Gtk::Entry _peak_amplitude; - bool spin_arrow_grab; + pthread_t _peak_amplitude_thread_handle; + void peak_amplitude_found (double); + PBD::Signal1 PeakAmplitudeFound; + PBD::ScopedConnection _peak_amplitude_connection; + CrossThreadChannel _peak_channel; }; #endif /* __gtk_ardour_audio_region_edit_h__ */