aboutsummaryrefslogtreecommitdiffstats
path: root/Medley/src/base/USongs.pas
diff options
context:
space:
mode:
Diffstat (limited to 'Medley/src/base/USongs.pas')
-rw-r--r--Medley/src/base/USongs.pas19
1 files changed, 17 insertions, 2 deletions
diff --git a/Medley/src/base/USongs.pas b/Medley/src/base/USongs.pas
index baeec13a..af7f7a16 100644
--- a/Medley/src/base/USongs.pas
+++ b/Medley/src/base/USongs.pas
@@ -312,18 +312,33 @@ var
Files: TPathDynArray;
Song: TSong;
Extension: IPath;
+ MedleyFiles: TPathDynArray;
+ MedleyExtension: IPath;
begin
SetLength(Files, 0);
+
Extension := Path('.txt');
+ MedleyExtension := Path('.txtm');
FindFilesByExtension(Dir, Extension, true, Files);
+
for I := 0 to High(Files) do
begin
Song := TSong.Create(Files[I]);
if Song.Analyse then
- SongList.Add(Song)
- else
+ begin
+ //medley support... TODO: move it (see USong...)
+ SetLength(MedleyFiles, 0);
+ FindFilesByExtension(Files[I].GetPath, MedleyExtension, true, MedleyFiles);
+
+ if Length(MedleyFiles)>0 then
+ begin
+ Song.ReadMedleyFile(MedleyFiles[0]);
+ end;
+
+ SongList.Add(Song);
+ end else
begin
Log.LogError('AnalyseFile failed for "' + Files[I].ToNative + '".');
FreeAndNil(Song);