X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Ftime_info_box.h;h=ac4cc98ea5a2881ddd0ebfc169da4d762cd983ea;hb=057cf770f0dd57e1594725448b3da2b77d675e55;hp=50561d1249a2dffe6d21ced4d8ef066cc73ac5b0;hpb=7e2b86dc835bd061786bffd0d503dfb3e8c74912;p=ardour.git diff --git a/gtk2_ardour/time_info_box.h b/gtk2_ardour/time_info_box.h index 50561d1249..ac4cc98ea5 100644 --- a/gtk2_ardour/time_info_box.h +++ b/gtk2_ardour/time_info_box.h @@ -24,13 +24,14 @@ #include #include +#include + +#include "gtkmm2ext/cairo_packer.h" #include "ardour/ardour.h" #include "ardour/session_handle.h" -class CairoEditableText; -class CairoCell; -class CairoTextCell; +#include "ardour_button.h" namespace ARDOUR { class Session; @@ -39,7 +40,7 @@ namespace ARDOUR { class AudioClock; -class TimeInfoBox : public Gtk::Table, public ARDOUR::SessionHandlePtr +class TimeInfoBox : public CairoHPacker, public ARDOUR::SessionHandlePtr { public: TimeInfoBox (); @@ -47,10 +48,10 @@ class TimeInfoBox : public Gtk::Table, public ARDOUR::SessionHandlePtr void set_session (ARDOUR::Session*); - protected: - bool on_expose_event (GdkEventExpose*); - private: + Gtk::Table left; + Gtk::Table right; + AudioClock* selection_start; AudioClock* selection_end; AudioClock* selection_length; @@ -67,6 +68,10 @@ class TimeInfoBox : public Gtk::Table, public ARDOUR::SessionHandlePtr void punch_location_changed (ARDOUR::Location*); void watch_punch (ARDOUR::Location*); PBD::ScopedConnectionList punch_connections; + PBD::ScopedConnectionList editor_connections; + + ArdourButton punch_in_button; + ArdourButton punch_out_button; void selection_changed (); @@ -74,6 +79,7 @@ class TimeInfoBox : public Gtk::Table, public ARDOUR::SessionHandlePtr void sync_punch_mode (AudioClock*); bool clock_button_release_event (GdkEventButton* ev, AudioClock* src); + void track_mouse_mode (); };