diff --git a/gtk2_ardour/editor_canvas.cc b/gtk2_ardour/editor_canvas.cc index 28bbaf2ce2..f6d6b037ea 100644 --- a/gtk2_ardour/editor_canvas.cc +++ b/gtk2_ardour/editor_canvas.cc @@ -316,6 +316,10 @@ Editor::track_canvas_size_allocated () if (playhead_cursor) playhead_cursor->set_length (canvas_height); + for (MarkerSelection::iterator x = selection->markers.begin(); x != selection->markers.end(); ++x) { + (*x)->set_line_length (canvas_height); + } + // EDIT CURSOR XXX set line height for selected markers here if (range_marker_drag_rect) { diff --git a/gtk2_ardour/marker.cc b/gtk2_ardour/marker.cc index f67b291af2..df62af90ec 100644 --- a/gtk2_ardour/marker.cc +++ b/gtk2_ardour/marker.cc @@ -293,6 +293,15 @@ void Marker::reparent(ArdourCanvas::Group & parent) _parent = &parent; } +void +Marker::set_line_length (double len) +{ + if (line) { + line_points->back().set_y (len); + line->property_points() = *line_points; + } +} + void Marker::add_line (ArdourCanvas::Group* group, double initial_height) { diff --git a/gtk2_ardour/marker.h b/gtk2_ardour/marker.h index 733a2dd416..fa252571fb 100644 --- a/gtk2_ardour/marker.h +++ b/gtk2_ardour/marker.h @@ -60,6 +60,7 @@ class Marker : public PBD::Destructible void add_line (ArdourCanvas::Group*, double initial_height); void show_line (); void hide_line (); + void set_line_length (double); void set_position (nframes_t); void set_name (const string&);