#include <gtkmm/label.h>
#include <gtkmm/table.h>
+#include "gtkmm2ext/cairo_packer.h"
+
#include "ardour/ardour.h"
#include "ardour/session_handle.h"
+#include "ardour_button.h"
+
namespace ARDOUR {
class Session;
class Location;
class AudioClock;
-class TimeInfoBox : public Gtk::Table, public ARDOUR::SessionHandlePtr
+class TimeInfoBox : public CairoHPacker, public ARDOUR::SessionHandlePtr
{
public:
TimeInfoBox ();
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;
void watch_punch (ARDOUR::Location*);
PBD::ScopedConnectionList punch_connections;
PBD::ScopedConnectionList editor_connections;
+ PBD::ScopedConnectionList region_property_connections;
- Gtkmm2ext::StatefulToggleButton punch_in_button;
- Gtkmm2ext::StatefulToggleButton punch_out_button;
- Gtk::HBox punch_button_box;
+ ArdourButton punch_in_button;
+ ArdourButton punch_out_button;
void selection_changed ();
bool clock_button_release_event (GdkEventButton* ev, AudioClock* src);
void track_mouse_mode ();
+ void region_property_change (boost::shared_ptr<ARDOUR::Region> r, const PBD::PropertyChange& what_changed);
};