Something went wrong. Try again.
OpenMW is an open implementation of the Morrowind engine
Something went wrong. Try again.
3.5 kB · 150 lines
C++
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151#include "esmfile.hpp"
ContentSelectorModel::EsmFile::EsmFile(const QString& fileName, ModelItem* parent) : ModelItem(parent){ setFileName(fileName);}
void ContentSelectorModel::EsmFile::setFileName(const QString& fileName){ mFileName = fileName; mHasGameExtension = (mFileName.endsWith(QLatin1String(".esm"), Qt::CaseInsensitive) || mFileName.endsWith(QLatin1String(".omwgame"), Qt::CaseInsensitive));}
void ContentSelectorModel::EsmFile::setAuthor(const QString& author){ mAuthor = author;}
void ContentSelectorModel::EsmFile::setDate(const QDateTime& modified){ mModified = modified;}
void ContentSelectorModel::EsmFile::setFormat(const QString& format){ mVersion = format;}
void ContentSelectorModel::EsmFile::setFilePath(const QString& path){ mPath = path;}
void ContentSelectorModel::EsmFile::setGameFiles(const QStringList& gamefiles){ mGameFiles = gamefiles;}
void ContentSelectorModel::EsmFile::setDescription(const QString& description){ mDescription = description;}
void ContentSelectorModel::EsmFile::setBuiltIn(bool builtIn){ mBuiltIn = builtIn;}
void ContentSelectorModel::EsmFile::setFromAnotherConfigFile(bool fromAnotherConfigFile){ mFromAnotherConfigFile = fromAnotherConfigFile;}
bool ContentSelectorModel::EsmFile::isGameFile() const{ return mHasGameExtension && mGameFiles.empty();}
QVariant ContentSelectorModel::EsmFile::fileProperty(const FileProperty prop) const{ switch (prop) { case FileProperty_FileName: return mFileName; break;
case FileProperty_Author: return mAuthor; break;
case FileProperty_Format: return mVersion; break;
case FileProperty_DateModified: return mModified.toString(Qt::ISODate); break;
case FileProperty_FilePath: return mPath; break;
case FileProperty_Description: return mDescription; break;
case FileProperty_BuiltIn: return mBuiltIn; break;
case FileProperty_FromAnotherConfigFile: return mFromAnotherConfigFile; break;
case FileProperty_GameFile: return mGameFiles; break;
default: break; } return QVariant();}void ContentSelectorModel::EsmFile::setFileProperty(const FileProperty prop, const QString& value){ switch (prop) { case FileProperty_FileName: setFileName(value); break;
case FileProperty_Author: mAuthor = value; break;
case FileProperty_Format: mVersion = value; break;
case FileProperty_DateModified: mModified = QDateTime::fromString(value, Qt::ISODate); break;
case FileProperty_FilePath: mPath = value; break;
case FileProperty_Description: mDescription = value; break;
// todo: check these work case FileProperty_BuiltIn: mBuiltIn = value == "true"; break;
case FileProperty_FromAnotherConfigFile: mFromAnotherConfigFile = value == "true"; break;
case FileProperty_GameFile: mGameFiles << value; break;
default: break; }}