mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-02-13 12:09:41 +00:00
Read profile files from LauncherSettings in load order.
This commit is contained in:
parent
ad5d884761
commit
a62e15d93d
2 changed files with 16 additions and 6 deletions
apps/launcher
|
@ -94,20 +94,28 @@ bool Launcher::DataFilesPage::loadSettings()
|
|||
if (!currentProfile.isEmpty())
|
||||
addProfile(currentProfile, true);
|
||||
|
||||
QStringList files = mLauncherSettings.values(QString("Profiles/") + currentProfile + QString("/content"), Qt::MatchExactly);
|
||||
mSelector->setProfileContent(filesInProfile(currentProfile, pathIterator));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
QStringList Launcher::DataFilesPage::filesInProfile(const QString& profileName, PathIterator& pathIterator)
|
||||
{
|
||||
QStringList files = mLauncherSettings.values(QString("Profiles/") + profileName + QString("/content"), Qt::MatchExactly);
|
||||
QStringList filepaths;
|
||||
|
||||
foreach (const QString &file, files)
|
||||
// mLauncherSettings.values() returns the files in reverse load order
|
||||
QListIterator<QString> i(files);
|
||||
i.toBack();
|
||||
while (i.hasPrevious())
|
||||
{
|
||||
QString filepath = pathIterator.findFirstPath (file);
|
||||
QString filepath = pathIterator.findFirstPath(i.previous());
|
||||
|
||||
if (!filepath.isEmpty())
|
||||
filepaths << filepath;
|
||||
}
|
||||
|
||||
mSelector->setProfileContent (filepaths);
|
||||
|
||||
return true;
|
||||
return filepaths;
|
||||
}
|
||||
|
||||
void Launcher::DataFilesPage::saveSettings(const QString &profile)
|
||||
|
|
|
@ -134,6 +134,8 @@ namespace Launcher
|
|||
}
|
||||
|
||||
};
|
||||
|
||||
QStringList filesInProfile(const QString& profileName, PathIterator& pathIterator);
|
||||
};
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue