traverso-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Traverso-commit] traverso/src/core Sheet.cpp Sheet.h


From: Nicola Doebelin
Subject: [Traverso-commit] traverso/src/core Sheet.cpp Sheet.h
Date: Wed, 20 May 2009 18:14:56 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Nicola Doebelin <n_doebelin>    09/05/20 18:14:56

Modified files:
        src/core       : Sheet.cpp Sheet.h 

Log message:
        * file names of exported files are composed from cd-text, e.g. 
<track-nr>-<artist>-<title>.wav

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Sheet.cpp?cvsroot=traverso&r1=1.29&r2=1.30
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Sheet.h?cvsroot=traverso&r1=1.11&r2=1.12

Patches:
Index: Sheet.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/Sheet.cpp,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -b -r1.29 -r1.30
--- Sheet.cpp   7 May 2009 19:59:03 -0000       1.29
+++ Sheet.cpp   20 May 2009 18:14:56 -0000      1.30
@@ -500,7 +500,7 @@
                 spec->progress      = 0;
                 spec->cdTrackStart    = spec->markers.at(i)->get_when();
                 spec->cdTrackEnd      = spec->markers.at(i+1)->get_when();
-                spec->name          = 
format_cdtrack_name(spec->markers.at(i)->get_description(), i+1);
+                spec->name          = format_cdtrack_name(spec->markers.at(i), 
i+1);
                 spec->totalTime     = spec->cdTrackEnd - spec->cdTrackStart;
                 spec->pos           = spec->cdTrackStart;
                 spec->peakvalue     = peakvalue;
@@ -630,13 +630,20 @@
 // formatting the track names in a separate function to guarantee that
 // the file names of exported tracks and the entry in the TOC file always
 // match
-QString Sheet::format_cdtrack_name(QString n, int i)
+QString Sheet::format_cdtrack_name(Marker *marker, int i)
 {
         QString name;
-        if (n.isEmpty()) {
+        QString song = marker->get_description();
+        QString performer = marker->get_performer();
+
                 name = QString("%1").arg(i, 2, 10, QChar('0'));
-        } else {
-                name = QString("%1-%2").arg(i, 2, 10, QChar('0')).arg(n);
+
+        if (!performer.isEmpty()) {
+                name += "-" + performer;
+        }
+
+        if (!song.isEmpty()) {
+                name += "-" + song;
         }
 
         name.replace(QRegExp("\\s"), "_");
@@ -988,7 +995,7 @@
                 QString s_length = timeref_to_cd(length);
 
 //             output += "  FILE \"" + spec->name + "." + 
spec->extraFormat["filetype"] + "\" " + s_start + " " + s_length + "\n\n";
-                output += "  FILE \"" + 
format_cdtrack_name(startmarker->get_description(), i+1) + "." + 
spec->extraFormat["filetype"] + "\" 0 " + s_length + "\n\n";
+                output += "  FILE \"" + format_cdtrack_name(startmarker, i+1) 
+ "." + spec->extraFormat["filetype"] + "\" 0 " + s_length + "\n\n";
 //             start += length;
 
                // check if the second marker is of type "Endmarker"

Index: Sheet.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/Sheet.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- Sheet.h     7 May 2009 19:59:03 -0000       1.11
+++ Sheet.h     20 May 2009 18:14:56 -0000      1.12
@@ -224,7 +224,7 @@
        void start_transport_rolling(bool realtime);
        void stop_transport_rolling();
        void update_skip_positions();
-        QString format_cdtrack_name(QString, int);
+        QString format_cdtrack_name(Marker *, int);
         QList<Marker *> get_cdtrack_list(ExportSpecification*);
        
        void resize_buffer(bool updateArmStatus, nframes_t size);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]