]> git.sesse.net Git - kdenlive/commitdiff
improve ruler tooltips
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Wed, 14 Oct 2009 13:17:03 +0000 (13:17 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Wed, 14 Oct 2009 13:17:03 +0000 (13:17 +0000)
svn path=/trunk/kdenlive/; revision=4038

src/customruler.cpp
src/mainwindow.cpp
src/monitor.cpp
src/smallruler.cpp
src/smallruler.h

index 0d4eef4ebc849fad63ffc893c7b271b46b12623d..dbf5fe962dd9edd8e94e4fd57128c8c7a5070c62 100644 (file)
@@ -197,7 +197,7 @@ void CustomRuler::mouseMoveEvent(QMouseEvent * event)
             setToolTip(i18n("Zone duration: %1", m_timecode.getTimecodeFromFrames(m_zoneEnd - m_zoneStart)));
         } else {
             setCursor(Qt::ArrowCursor);
-            setToolTip(QString());
+            setToolTip(i18n("Position: %1", m_timecode.getTimecodeFromFrames(pos)));
         }
     }
 }
index 260e3faa0d844d5cd87c1a289ffdd544fa0a3848..207492aca8a70c46b27b58e118486999247e7b4c 100644 (file)
@@ -2975,14 +2975,14 @@ void MainWindow::slotChangePalette(QAction *action, const QString &themename)
     kapp->setPalette(plt);
     const QObjectList children = statusBar()->children();
 
-    foreach (QObject *child, children) {
-       if (child->isWidgetType())
-           ((QWidget*)child)->setPalette(plt);
-       const QObjectList subchildren = child->children();
-       foreach (QObject *subchild, subchildren) {
-           if (subchild->isWidgetType())
-               ((QWidget*)subchild)->setPalette(plt);
-       }
+    foreach(QObject *child, children) {
+        if (child->isWidgetType())
+            ((QWidget*)child)->setPalette(plt);
+        const QObjectList subchildren = child->children();
+        foreach(QObject *subchild, subchildren) {
+            if (subchild->isWidgetType())
+                ((QWidget*)subchild)->setPalette(plt);
+        }
     }
 }
 
index aecfe116b02263972246574d53667ed7ffefd74d..9c6217d20409a2477f386479299d546fdfb64e01 100644 (file)
@@ -47,7 +47,7 @@ Monitor::Monitor(QString name, MonitorManager *manager, QString profile, QWidget
         m_name(name),
         m_monitorManager(manager),
         m_currentClip(NULL),
-        m_ruler(new SmallRuler()),
+        m_ruler(new SmallRuler(m_monitorManager)),
         m_overlay(NULL),
         m_isActive(false),
         m_scale(1),
index 9097fe90d7afefbbe7a07840799d07abfeb3e57d..c002c5c46c4a03978b4d592595ca2ac49023a019 100644 (file)
 #include <QMouseEvent>
 #include <QStylePainter>
 
-SmallRuler::SmallRuler(QWidget *parent) :
+SmallRuler::SmallRuler(MonitorManager *manager, QWidget *parent) :
         QWidget(parent),
         m_scale(1),
-        m_maxval(25)
+        m_maxval(25),
+        m_manager(manager)
 {
     m_zoneStart = 10;
     m_zoneEnd = 60;
     m_zoneColor = QColor(133, 255, 143);
+    setMouseTracking(true);
 }
 
 void SmallRuler::adjustScale(int maximum)
@@ -108,6 +110,15 @@ void SmallRuler::mouseMoveEvent(QMouseEvent * event)
 {
     const int pos = event->x() / m_scale;
     if (event->buttons() & Qt::LeftButton) emit seekRenderer((int) pos);
+    else {
+        if (qAbs((pos - m_zoneStart) * m_scale) < 4) {
+            setToolTip(i18n("Zone start: %1", m_manager->timecode().getTimecodeFromFrames(m_zoneStart)));
+        } else if (qAbs((pos - m_zoneEnd) * m_scale) < 4) {
+            setToolTip(i18n("Zone end: %1", m_manager->timecode().getTimecodeFromFrames(m_zoneEnd)));
+        } else if (pos > m_zoneStart && pos < m_zoneEnd) {
+            setToolTip(i18n("Zone duration: %1", m_manager->timecode().getTimecodeFromFrames(m_zoneEnd - m_zoneStart)));
+        } else setToolTip(i18n("Position: %1", m_manager->timecode().getTimecodeFromFrames(pos)));
+    }
 }
 
 void SmallRuler::slotNewValue(int value)
index 38c466fbf889ac69ac23ec75eec42d2e046ad3ee..fc0956d40d787a2c4d85e315be7f69690974249e 100644 (file)
 
 #include <QWidget>
 
+#include "monitormanager.h"
+
 class SmallRuler : public QWidget
 {
     Q_OBJECT
 
 public:
-    SmallRuler(QWidget *parent = 0);
+    SmallRuler(MonitorManager *manager, QWidget *parent = 0);
     virtual void mousePressEvent(QMouseEvent * event);
     virtual void mouseMoveEvent(QMouseEvent * event);
     void adjustScale(int maximum);
@@ -52,6 +54,7 @@ private:
     QColor m_zoneColor;
     QList <int> m_markers;
     QPixmap m_pixmap;
+    MonitorManager *m_manager;
     void updatePixmap();
 
 public slots: