Some launcher fixes

I tried to fix https://gitlab.com/OpenMW/openmw/-/issues/8080 by making it so that instead of crashing, we showed an error.

In doing so, I discovered some problems with plugin sorting and the refresh button, like:
* it forgetting the non-user content files somewhere
* nothing guaranteeing that built-in content files stay at the top of the list and them only being there because the first data directory that provides them is usually the first data directory
* it forgetting the non-user content files somewhere else
* it looking like it'd forget any kind of non-user setting under certain circumstances

I fixed those problems too
This commit is contained in:
AnyOldName3 2024-07-31 00:04:38 +01:00
parent 11c21c28bf
commit cd7941dc9f
10 changed files with 72 additions and 23 deletions

View file

@ -55,12 +55,15 @@ namespace ContentSelectorModel
QString filePath() const { return mPath; }
bool builtIn() const { return mBuiltIn; }
bool fromAnotherConfigFile() const { return mFromAnotherConfigFile; }
bool isMissing() const { return mPath.isEmpty(); }
/// @note Contains file names, not paths.
const QStringList& gameFiles() const { return mGameFiles; }
QString description() const { return mDescription; }
QString toolTip() const
{
if (isMissing())
return tr("<b>This file is specified in a non-user config file, but does not exist in the VFS.</b>");
QString tooltip = mTooltipTemlate.arg(mAuthor)
.arg(mVersion)
.arg(mModified.toString(Qt::ISODate))