From 562b0e3a7f44c36141a75eaf96e97522668fb165 Mon Sep 17 00:00:00 2001 From: Thomas Wilshaw Date: Sun, 15 Aug 2021 11:57:48 +0100 Subject: [PATCH] Make sure marker position is updated whenever the timeline changes --- app/widget/timeruler/seekablewidget.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/app/widget/timeruler/seekablewidget.cpp b/app/widget/timeruler/seekablewidget.cpp index 0227997bf..43122a516 100644 --- a/app/widget/timeruler/seekablewidget.cpp +++ b/app/widget/timeruler/seekablewidget.cpp @@ -66,6 +66,8 @@ void SeekableWidget::ConnectTimelinePoints(TimelinePoints *points) connect(timeline_points_->markers(), &TimelineMarkerList::MarkerAdded, this, &SeekableWidget::addMarker); } + updateMarkerPositions(); + update(); } @@ -107,6 +109,8 @@ void SeekableWidget::mouseReleaseEvent(QMouseEvent *event) void SeekableWidget::ScaleChangedEvent(const double &) { + updateMarkerPositions(); + update(); } @@ -119,6 +123,8 @@ void SeekableWidget::SetTime(const rational &r) { time_ = r; + updateMarkerPositions(); + update(); } @@ -126,9 +132,9 @@ void SeekableWidget::SetScroll(int s) { scroll_ = s; - update(); - updateMarkerPositions(); + + update(); } void SeekableWidget::addMarker(TimelineMarker* marker) @@ -137,7 +143,6 @@ void SeekableWidget::addMarker(TimelineMarker* marker) Marker *marker_widget = new Marker(this); marker_map_.insert(marker, marker_widget); - //marker_widget->setGeometry(TimeToScreen(marker->time().in()), 20, 20, 20); marker_widget->move(TimeToScreen(marker->time().in()), 20); marker_widget->show(); } @@ -145,7 +150,7 @@ void SeekableWidget::addMarker(TimelineMarker* marker) void SeekableWidget::updateMarkerPositions() { - foreach (TimelineMarker *marker, marker_map_.keys()) { + foreach (TimelineMarker* marker, marker_map_.keys()) { Marker *m = marker_map_.value(marker); m->move(TimeToScreen(marker->time().in()), 20); }