#include "time_info_box.h"
#include "audio_clock.h"
#include "editor.h"
+#include "control_point.h"
+#include "automation_line.h"
#include "i18n.h"
, syncing_selection (false)
, syncing_punch (false)
{
+ set_name (X_("TimeInfoBox"));
+
selection_start = new AudioClock ("selection-start", false, "selection", false, false, false, false);
selection_end = new AudioClock ("selection-end", false, "selection", false, false, false, false);
selection_length = new AudioClock ("selection-length", false, "selection", false, false, true, false);
punch_title.set_text (_("Punch"));
set_homogeneous (false);
- set_spacing (6);
+ set_spacing (0);
set_border_width (2);
pack_start (left, true, true);
Gtk::Label* l;
selection_title.set_name ("TimeInfoSelectionTitle");
- left.attach (selection_title, 0, 2, 0, 1);
+ left.attach (selection_title, 1, 2, 0, 1);
l = manage (new Label);
l->set_text (_("Start"));
l->set_alignment (1.0, 0.5);
Gtkmm2ext::UI::instance()->set_tip (punch_out_button, _("Stop recording at auto-punch end"));
punch_title.set_name ("TimeInfoSelectionTitle");
- right.attach (punch_title, 2, 4, 0, 1);
+ right.attach (punch_title, 3, 4, 0, 1);
right.attach (punch_in_button, 2, 3, 1, 2, FILL, SHRINK);
right.attach (*punch_start, 3, 4, 1, 2);
right.attach (punch_out_button, 2, 3, 2, 3, FILL, SHRINK);
Editor::instance().get_selection().TimeChanged.connect (sigc::mem_fun (*this, &TimeInfoBox::selection_changed));
Editor::instance().get_selection().RegionsChanged.connect (sigc::mem_fun (*this, &TimeInfoBox::selection_changed));
- Editor::instance().MouseModeChanged.connect (editor_connections, invalidator(*this), ui_bind (&TimeInfoBox::track_mouse_mode, this), gui_context());
+ Editor::instance().MouseModeChanged.connect (editor_connections, invalidator(*this), boost::bind (&TimeInfoBox::track_mouse_mode, this), gui_context());
}
TimeInfoBox::~TimeInfoBox ()
s = max_framepos;
e = 0;
for (PointSelection::iterator i = selection.points.begin(); i != selection.points.end(); ++i) {
- s = min (s, (framepos_t) i->start);
- e = max (e, (framepos_t) i->end);
+ framepos_t const p = (*i)->line().session_position ((*i)->model ());
+ s = min (s, p);
+ e = max (e, p);
}
selection_start->set_off (false);
selection_end->set_off (false);