]> git.sesse.net Git - kdenlive/blobdiff - src/timecode.cpp
Const'ref
[kdenlive] / src / timecode.cpp
index ca51d7cf54422505429ad2620da7a09eb3f90c6a..789b286103d2bf0659513ec0c6fc04da94b64cf9 100644 (file)
@@ -117,7 +117,7 @@ bool Timecode::df() const
     return m_dropFrameTimecode;
 }
 
-const QString Timecode::mask(GenTime t) const
+const QString Timecode::mask(const GenTime& t) const
 {
     if (t < GenTime()) {
         if (m_dropFrameTimecode) return "#99:99:99,99";
@@ -210,7 +210,7 @@ const QString Timecode::getTimecodeFromFrames(int frames) const
 
 
 //static
-QString Timecode::getStringTimecode(int frames, const double &fps)
+QString Timecode::getStringTimecode(int frames, const double &fps, bool showFrames)
 {
     // Returns the timecode in an hh:mm:ss format
 
@@ -221,6 +221,7 @@ QString Timecode::getStringTimecode(int frames, const double &fps)
     }
 
     int seconds = (int)(frames / fps);
+    int frms = frames % (int) (fps + 0.5);
     int minutes = seconds / 60;
     seconds = seconds % 60;
     int hours = minutes / 60;
@@ -233,6 +234,10 @@ QString Timecode::getStringTimecode(int frames, const double &fps)
     text.append(QString::number(minutes).rightJustified(2, '0', false));
     text.append(':');
     text.append(QString::number(seconds).rightJustified(2, '0', false));
+    if (showFrames) {
+        text.append('.');
+        text.append(QString::number(frms).rightJustified(2, '0', false));
+    }
     return text;
 }