]> git.sesse.net Git - kdenlive/blobdiff - src/smallruler.cpp
Make monitor zone functional
[kdenlive] / src / smallruler.cpp
index 2a41544c966e0b8ece69365bf18ef10ee1c133d9..7575927a012d07b803cdb96c3fc51dd793771ca0 100644 (file)
@@ -52,11 +52,23 @@ void SmallRuler::adjustScale(int maximum) {
 }
 
 void SmallRuler::setZone(int start, int end) {
-    m_zoneStart = start;
-    m_zoneEnd = end;
+    if (start != -1) {
+        if (end != -1 && start >= end) return;
+        else if (end == -1 && start >= m_zoneEnd) return;
+        m_zoneStart = start;
+    }
+    if (end != -1) {
+        if (start != -1 && end <= start) end = m_zoneEnd;
+        else if (start == -1 && end <= m_zoneStart) end = m_zoneEnd;
+        m_zoneEnd = end;
+    }
     update();
 }
 
+QPoint SmallRuler::zone() {
+    return QPoint(m_zoneStart, m_zoneEnd);
+}
+
 // virtual
 void SmallRuler::mousePressEvent(QMouseEvent * event) {
     const int pos = event->x() / m_scale;