diff options
| -rw-r--r-- | src/editexecutablesdialog.cpp | 32 | ||||
| -rw-r--r-- | src/executableslist.cpp | 149 | ||||
| -rw-r--r-- | src/executableslist.h | 50 | ||||
| -rw-r--r-- | src/mainwindow.cpp | 50 | ||||
| -rw-r--r-- | src/mainwindow.h | 2 | ||||
| -rw-r--r-- | src/organizercore.cpp | 42 |
6 files changed, 215 insertions, 110 deletions
diff --git a/src/editexecutablesdialog.cpp b/src/editexecutablesdialog.cpp index 177661ff..67fbff31 100644 --- a/src/editexecutablesdialog.cpp +++ b/src/editexecutablesdialog.cpp @@ -71,7 +71,7 @@ void EditExecutablesDialog::refreshExecutablesWidget() m_ExecutablesList.getExecutables(current, end); for(; current != end; ++current) { - QListWidgetItem *newItem = new QListWidgetItem(current->m_Title); + QListWidgetItem *newItem = new QListWidgetItem(current->title()); newItem->setTextColor(current->isCustom() ? QColor(Qt::black) : QColor(Qt::darkGray)); ui->executablesListBox->addItem(newItem); } @@ -284,10 +284,10 @@ bool EditExecutablesDialog::executableChanged() if (m_CurrentItem != nullptr) { Executable const &selectedExecutable(m_ExecutablesList.find(m_CurrentItem->text())); - QString storedCustomOverwrite = m_Profile->setting("custom_overwrites", selectedExecutable.m_Title).toString(); + QString storedCustomOverwrite = m_Profile->setting("custom_overwrites", selectedExecutable.title()).toString(); bool forcedLibrariesDirty = false; - auto forcedLibaries = m_Profile->determineForcedLibraries(selectedExecutable.m_Title); + auto forcedLibaries = m_Profile->determineForcedLibraries(selectedExecutable.title()); forcedLibrariesDirty |= !std::equal(forcedLibaries.begin(), forcedLibaries.end(), m_ForcedLibraries.begin(), m_ForcedLibraries.end(), [](const ExecutableForcedLoadSetting &lhs, const ExecutableForcedLoadSetting &rhs) @@ -300,13 +300,13 @@ bool EditExecutablesDialog::executableChanged() forcedLibrariesDirty |= m_Profile->setting("forced_libraries", ui->titleEdit->text() + "/enabled", false).toBool() != ui->forceLoadCheckBox->isChecked(); - return selectedExecutable.m_Title != ui->titleEdit->text() - || selectedExecutable.m_Arguments != ui->argumentsEdit->text() - || selectedExecutable.m_SteamAppID != ui->appIDOverwriteEdit->text() + return selectedExecutable.title() != ui->titleEdit->text() + || selectedExecutable.arguments() != ui->argumentsEdit->text() + || selectedExecutable.steamAppID() != ui->appIDOverwriteEdit->text() || !storedCustomOverwrite.isEmpty() != ui->newFilesModCheckBox->isChecked() || !storedCustomOverwrite.isEmpty() && (storedCustomOverwrite != ui->newFilesModBox->currentText()) - || selectedExecutable.m_WorkingDirectory != QDir::fromNativeSeparators(ui->workingDirEdit->text()) - || selectedExecutable.m_BinaryInfo.absoluteFilePath() != QDir::fromNativeSeparators(ui->binaryEdit->text()) + || selectedExecutable.workingDirectory() != QDir::fromNativeSeparators(ui->workingDirEdit->text()) + || selectedExecutable.binaryInfo().absoluteFilePath() != QDir::fromNativeSeparators(ui->binaryEdit->text()) || selectedExecutable.usesOwnIcon() != ui->useAppIconCheckBox->isChecked() || forcedLibrariesDirty ; @@ -376,14 +376,14 @@ void EditExecutablesDialog::on_executablesListBox_clicked(const QModelIndex &cur Executable const &selectedExecutable(m_ExecutablesList.find(m_CurrentItem->text())); - ui->titleEdit->setText(selectedExecutable.m_Title); - ui->binaryEdit->setText(QDir::toNativeSeparators(selectedExecutable.m_BinaryInfo.absoluteFilePath())); - ui->argumentsEdit->setText(selectedExecutable.m_Arguments); - ui->workingDirEdit->setText(QDir::toNativeSeparators(selectedExecutable.m_WorkingDirectory)); + ui->titleEdit->setText(selectedExecutable.title()); + ui->binaryEdit->setText(QDir::toNativeSeparators(selectedExecutable.binaryInfo().absoluteFilePath())); + ui->argumentsEdit->setText(selectedExecutable.arguments()); + ui->workingDirEdit->setText(QDir::toNativeSeparators(selectedExecutable.workingDirectory())); ui->removeButton->setEnabled(selectedExecutable.isCustom()); - ui->overwriteAppIDBox->setChecked(!selectedExecutable.m_SteamAppID.isEmpty()); - if (!selectedExecutable.m_SteamAppID.isEmpty()) { - ui->appIDOverwriteEdit->setText(selectedExecutable.m_SteamAppID); + ui->overwriteAppIDBox->setChecked(!selectedExecutable.steamAppID().isEmpty()); + if (!selectedExecutable.steamAppID().isEmpty()) { + ui->appIDOverwriteEdit->setText(selectedExecutable.steamAppID()); } else { ui->appIDOverwriteEdit->clear(); } @@ -391,7 +391,7 @@ void EditExecutablesDialog::on_executablesListBox_clicked(const QModelIndex &cur int index = -1; - QString customOverwrite = m_Profile->setting("custom_overwrites", selectedExecutable.m_Title).toString(); + QString customOverwrite = m_Profile->setting("custom_overwrites", selectedExecutable.title()).toString(); if (!customOverwrite.isEmpty()) { index = ui->newFilesModBox->findText(customOverwrite); qDebug("find %s -> %d", qUtf8Printable(customOverwrite), index); diff --git a/src/executableslist.cpp b/src/executableslist.cpp index 4b2e380b..79b17f5b 100644 --- a/src/executableslist.cpp +++ b/src/executableslist.cpp @@ -84,7 +84,7 @@ void ExecutablesList::getExecutables(std::vector<Executable>::const_iterator &be const Executable &ExecutablesList::find(const QString &title) const
{
for (Executable const &exe : m_Executables) {
- if (exe.m_Title == title) {
+ if (exe.title() == title) {
return exe;
}
}
@@ -95,7 +95,7 @@ const Executable &ExecutablesList::find(const QString &title) const Executable &ExecutablesList::find(const QString &title)
{
for (Executable &exe : m_Executables) {
- if (exe.m_Title == title) {
+ if (exe.title() == title) {
return exe;
}
}
@@ -106,7 +106,7 @@ Executable &ExecutablesList::find(const QString &title) Executable &ExecutablesList::findByBinary(const QFileInfo &info)
{
for (Executable &exe : m_Executables) {
- if (info == exe.m_BinaryInfo) {
+ if (exe.binaryInfo() == info) {
return exe;
}
}
@@ -117,7 +117,7 @@ Executable &ExecutablesList::findByBinary(const QFileInfo &info) std::vector<Executable>::iterator ExecutablesList::findExe(const QString &title)
{
for (std::vector<Executable>::iterator iter = m_Executables.begin(); iter != m_Executables.end(); ++iter) {
- if (iter->m_Title == title) {
+ if (iter->title() == title) {
return iter;
}
}
@@ -127,14 +127,14 @@ std::vector<Executable>::iterator ExecutablesList::findExe(const QString &title) bool ExecutablesList::titleExists(const QString &title) const
{
- auto test = [&] (const Executable &exe) { return exe.m_Title == title; };
+ auto test = [&] (const Executable &exe) { return exe.title() == title; };
return std::find_if(m_Executables.begin(), m_Executables.end(), test) != m_Executables.end();
}
void ExecutablesList::addExecutable(const Executable &executable)
{
- auto existingExe = findExe(executable.m_Title);
+ auto existingExe = findExe(executable.title());
if (existingExe != m_Executables.end()) {
*existingExe = executable;
} else {
@@ -157,31 +157,32 @@ void ExecutablesList::updateExecutable(const QString &title, flags &= mask;
if (existingExe != m_Executables.end()) {
- existingExe->m_Title = title;
- existingExe->m_Flags &= ~mask;
- existingExe->m_Flags |= flags;
+ existingExe->setTitle(title);
+
+ auto newFlags = existingExe->flags();
+ newFlags &= ~mask;
+ newFlags |= flags;
+
+ existingExe->setFlags(newFlags);
+
// for pre-configured executables don't overwrite settings we didn't store
if (flags & Executable::CustomExecutable) {
if (file.exists()) {
// don't overwrite a valid binary with an invalid one
- existingExe->m_BinaryInfo = file;
+ existingExe->setBinaryInfo(file);
}
+
if (dir.exists()) {
// don't overwrite a valid working directory with an invalid one
- existingExe->m_WorkingDirectory = workingDirectory;
+ existingExe->setWorkingDirectory(workingDirectory);
}
- existingExe->m_Arguments = arguments;
- existingExe->m_SteamAppID = steamAppID;
+ existingExe->setArguments(arguments);
+ existingExe->setSteamAppID(steamAppID);
}
} else {
- Executable newExe;
- newExe.m_Title = title;
- newExe.m_BinaryInfo = file;
- newExe.m_Arguments = arguments;
- newExe.m_WorkingDirectory = workingDirectory;
- newExe.m_SteamAppID = steamAppID;
- newExe.m_Flags = Executable::CustomExecutable | flags;
- m_Executables.push_back(newExe);
+ m_Executables.push_back({
+ title, file, arguments, workingDirectory, steamAppID,
+ Executable::CustomExecutable | flags});
}
}
@@ -189,7 +190,7 @@ void ExecutablesList::updateExecutable(const QString &title, void ExecutablesList::remove(const QString &title)
{
for (std::vector<Executable>::iterator iter = m_Executables.begin(); iter != m_Executables.end(); ++iter) {
- if (iter->isCustom() && (iter->m_Title == title)) {
+ if (iter->isCustom() && (iter->title() == title)) {
m_Executables.erase(iter);
break;
}
@@ -203,23 +204,105 @@ void ExecutablesList::addExecutableInternal(const QString &title, const QString {
QFileInfo file(executableName);
if (file.exists()) {
- Executable newExe;
- newExe.m_BinaryInfo = file;
- newExe.m_Title = title;
- newExe.m_Arguments = arguments;
- newExe.m_WorkingDirectory = workingDirectory;
- newExe.m_SteamAppID = steamAppID;
- newExe.m_Flags = Executable::UseApplicationIcon;
- m_Executables.push_back(newExe);
+ m_Executables.push_back({
+ title, file, arguments, steamAppID,
+ workingDirectory, Executable::UseApplicationIcon});
}
}
-void Executable::showOnToolbar(bool state)
+Executable::Executable(
+ QString title, QFileInfo binaryInfo, QString arguments,
+ QString steamAppID, QString workingDirectory, Flags flags) :
+ m_title(std::move(title)),
+ m_binaryInfo(std::move(binaryInfo)),
+ m_arguments(std::move(arguments)),
+ m_steamAppID(std::move(steamAppID)),
+ m_workingDirectory(std::move(workingDirectory)),
+ m_flags(flags)
+{
+}
+
+const QString& Executable::title() const
+{
+ return m_title;
+}
+
+void Executable::setTitle(const QString& s)
+{
+ m_title = s;
+}
+
+const QFileInfo& Executable::binaryInfo() const
+{
+ return m_binaryInfo;
+}
+
+void Executable::setBinaryInfo(const QFileInfo& fi)
+{
+ m_binaryInfo = fi;
+}
+
+const QString& Executable::arguments() const
+{
+ return m_arguments;
+}
+
+void Executable::setArguments(const QString& s)
+{
+ m_arguments = s;
+}
+
+const QString& Executable::steamAppID() const
+{
+ return m_steamAppID;
+}
+
+void Executable::setSteamAppID(const QString& s)
+{
+ m_steamAppID = s;
+}
+
+const QString& Executable::workingDirectory() const
+{
+ return m_workingDirectory;
+}
+
+void Executable::setWorkingDirectory(const QString& s)
+{
+ m_workingDirectory = s;
+}
+
+Executable::Flags Executable::flags() const
+{
+ return m_flags;
+}
+
+void Executable::setFlags(Flags f)
+{
+ m_flags = f;
+}
+
+bool Executable::isCustom() const
+{
+ return m_flags.testFlag(CustomExecutable);
+}
+
+bool Executable::isShownOnToolbar() const
+{
+ return m_flags.testFlag(ShowInToolbar);
+}
+
+void Executable::setShownOnToolbar(bool state)
{
if (state) {
- m_Flags |= ShowInToolbar;
+ m_flags |= ShowInToolbar;
} else {
- m_Flags &= ~ShowInToolbar;
+ m_flags &= ~ShowInToolbar;
}
}
+
+bool Executable::usesOwnIcon() const
+{
+ return m_flags.testFlag(UseApplicationIcon);
+}
diff --git a/src/executableslist.h b/src/executableslist.h index 0534c09e..0e43b337 100644 --- a/src/executableslist.h +++ b/src/executableslist.h @@ -32,14 +32,11 @@ namespace MOBase { class IPluginGame; } /*!
* @brief Information about an executable
**/
-struct Executable {
- QString m_Title;
- QFileInfo m_BinaryInfo;
- QString m_Arguments;
- QString m_SteamAppID;
- QString m_WorkingDirectory;
-
- enum Flag {
+class Executable
+{
+public:
+ enum Flag
+ {
CustomExecutable = 0x01,
ShowInToolbar = 0x02,
UseApplicationIcon = 0x04,
@@ -47,17 +44,42 @@ struct Executable { AllFlags = 0xff //I know, I know
};
- Q_DECLARE_FLAGS(Flags, Flag)
+ Q_DECLARE_FLAGS(Flags, Flag);
+
+ Executable(
+ QString title, QFileInfo binaryInfo, QString arguments,
+ QString steamAppID, QString workingDirectory, Flags flags);
- Flags m_Flags;
+ const QString& title() const;
+ void setTitle(const QString& s);
- bool isCustom() const { return m_Flags.testFlag(CustomExecutable); }
+ const QFileInfo& binaryInfo() const;
+ void setBinaryInfo(const QFileInfo& fi);
- bool isShownOnToolbar() const { return m_Flags.testFlag(ShowInToolbar); }
+ const QString& arguments() const;
+ void setArguments(const QString& s);
- void showOnToolbar(bool state);
+ const QString& steamAppID() const;
+ void setSteamAppID(const QString& s);
- bool usesOwnIcon() const { return m_Flags.testFlag(UseApplicationIcon); }
+ const QString& workingDirectory() const;
+ void setWorkingDirectory(const QString& s);
+
+ Flags flags() const;
+ void setFlags(Flags f);
+
+ bool isCustom() const;
+ bool isShownOnToolbar() const;
+ void setShownOnToolbar(bool state);
+ bool usesOwnIcon() const;
+
+private:
+ QString m_title;
+ QFileInfo m_binaryInfo;
+ QString m_arguments;
+ QString m_steamAppID;
+ QString m_workingDirectory;
+ Flags m_flags;
};
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 205ab7cc..38b2ed3f 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -741,7 +741,7 @@ void MainWindow::updatePinnedExecutables() hasLinks = true; QAction *exeAction = new QAction( - iconForExecutable(iter->m_BinaryInfo.filePath()), iter->m_Title); + iconForExecutable(iter->binaryInfo().filePath()), iter->title()); exeAction->setObjectName(QString("custom__") + iter->m_Title); exeAction->setStatusTip(iter->m_BinaryInfo.filePath()); @@ -1506,17 +1506,17 @@ void MainWindow::startExeAction() QAction *action = qobject_cast<QAction*>(sender()); if (action != nullptr) { const Executable &selectedExecutable(m_OrganizerCore.executablesList()->find(action->text())); - QString customOverwrite = m_OrganizerCore.currentProfile()->setting("custom_overwrites", selectedExecutable.m_Title).toString(); - auto forcedLibraries = m_OrganizerCore.currentProfile()->determineForcedLibraries(selectedExecutable.m_Title); - if (!m_OrganizerCore.currentProfile()->forcedLibrariesEnabled(selectedExecutable.m_Title)) { + QString customOverwrite = m_OrganizerCore.currentProfile()->setting("custom_overwrites", selectedExecutable.title()).toString(); + auto forcedLibraries = m_OrganizerCore.currentProfile()->determineForcedLibraries(selectedExecutable.title()); + if (!m_OrganizerCore.currentProfile()->forcedLibrariesEnabled(selectedExecutable.title())) { forcedLibraries.clear(); } m_OrganizerCore.spawnBinary( - selectedExecutable.m_BinaryInfo, selectedExecutable.m_Arguments, - selectedExecutable.m_WorkingDirectory.length() != 0 - ? selectedExecutable.m_WorkingDirectory - : selectedExecutable.m_BinaryInfo.absolutePath(), - selectedExecutable.m_SteamAppID, + selectedExecutable.binaryInfo(), selectedExecutable.arguments(), + selectedExecutable.workingDirectory().length() != 0 + ? selectedExecutable.workingDirectory() + : selectedExecutable.binaryInfo().absolutePath(), + selectedExecutable.steamAppID(), customOverwrite, forcedLibraries); } else { @@ -1792,8 +1792,8 @@ void MainWindow::refreshExecutablesList() std::vector<Executable>::const_iterator current, end; m_OrganizerCore.executablesList()->getExecutables(current, end); for(int i = 0; current != end; ++current, ++i) { - QIcon icon = iconForExecutable(current->m_BinaryInfo.filePath()); - executablesList->addItem(icon, current->m_Title); + QIcon icon = iconForExecutable(current->binaryInfo().filePath()); + executablesList->addItem(icon, current->title()); model->setData(model->index(i, 0), QSize(0, executablesList->iconSize().height() + 4), Qt::SizeHintRole); } @@ -2359,17 +2359,17 @@ void MainWindow::on_startButton_clicked() { ui->startButton->setEnabled(false); try { const Executable &selectedExecutable(getSelectedExecutable()); - QString customOverwrite = m_OrganizerCore.currentProfile()->setting("custom_overwrites", selectedExecutable.m_Title).toString(); - auto forcedLibraries = m_OrganizerCore.currentProfile()->determineForcedLibraries(selectedExecutable.m_Title); - if (!m_OrganizerCore.currentProfile()->forcedLibrariesEnabled(selectedExecutable.m_Title)) { + QString customOverwrite = m_OrganizerCore.currentProfile()->setting("custom_overwrites", selectedExecutable.title()).toString(); + auto forcedLibraries = m_OrganizerCore.currentProfile()->determineForcedLibraries(selectedExecutable.title()); + if (!m_OrganizerCore.currentProfile()->forcedLibrariesEnabled(selectedExecutable.title())) { forcedLibraries.clear(); } m_OrganizerCore.spawnBinary( - selectedExecutable.m_BinaryInfo, selectedExecutable.m_Arguments, - selectedExecutable.m_WorkingDirectory.length() != 0 - ? selectedExecutable.m_WorkingDirectory - : selectedExecutable.m_BinaryInfo.absolutePath(), - selectedExecutable.m_SteamAppID, + selectedExecutable.binaryInfo(), selectedExecutable.arguments(), + selectedExecutable.workingDirectory().length() != 0 + ? selectedExecutable.workingDirectory() + : selectedExecutable.binaryInfo().absolutePath(), + selectedExecutable.steamAppID(), customOverwrite, forcedLibraries); } catch (...) { @@ -5204,7 +5204,7 @@ void MainWindow::on_savegameList_customContextMenuRequested(const QPoint &pos) void MainWindow::linkToolbar() { Executable &exe(getSelectedExecutable()); - exe.showOnToolbar(!exe.isShownOnToolbar()); + exe.setShownOnToolbar(!exe.isShownOnToolbar()); ui->linkButton->menu()->actions().at(static_cast<int>(ShortcutType::Toolbar))->setIcon(exe.isShownOnToolbar() ? QIcon(":/MO/gui/remove") : QIcon(":/MO/gui/link")); updatePinnedExecutables(); } @@ -5212,7 +5212,7 @@ void MainWindow::linkToolbar() namespace { QString getLinkfile(const QString &dir, const Executable &exec) { - return QDir::fromNativeSeparators(dir) + "/" + exec.m_Title + ".lnk"; + return QDir::fromNativeSeparators(dir) + "/" + exec.title() + ".lnk"; } QString getDesktopLinkfile(const Executable &exec) @@ -5241,12 +5241,12 @@ void MainWindow::addWindowsLink(const ShortcutType mapping) } else { QFileInfo const exeInfo(qApp->applicationFilePath()); // create link - QString executable = QDir::toNativeSeparators(selectedExecutable.m_BinaryInfo.absoluteFilePath()); + QString executable = QDir::toNativeSeparators(selectedExecutable.binaryInfo().absoluteFilePath()); std::wstring targetFile = ToWString(exeInfo.absoluteFilePath()); std::wstring parameter = ToWString( - QString("\"moshortcut://%1:%2\"").arg(InstanceManager::instance().currentInstance(),selectedExecutable.m_Title)); - std::wstring description = ToWString(QString("Run %1 with ModOrganizer").arg(selectedExecutable.m_Title)); + QString("\"moshortcut://%1:%2\"").arg(InstanceManager::instance().currentInstance(),selectedExecutable.title())); + std::wstring description = ToWString(QString("Run %1 with ModOrganizer").arg(selectedExecutable.title())); std::wstring iconFile = ToWString(executable); std::wstring currentDirectory = ToWString(QDir::toNativeSeparators(qApp->applicationDirPath())); @@ -6391,7 +6391,7 @@ void MainWindow::removeFromToolbar() { try { Executable &exe = m_OrganizerCore.executablesList()->find(m_ContextAction->text()); - exe.showOnToolbar(false); + exe.setShownOnToolbar(false); } catch (const std::runtime_error&) { qDebug("executable doesn't exist any more"); } diff --git a/src/mainwindow.h b/src/mainwindow.h index 88389738..b6283a26 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -33,7 +33,7 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>. //Note the commented headers here can be replaced with forward references, //when I get round to cleaning up main.cpp -struct Executable; +class Executable; class CategoryFactory; class LockedDialogBase; class OrganizerCore; diff --git a/src/organizercore.cpp b/src/organizercore.cpp index 892162f6..cfbcad39 100644 --- a/src/organizercore.cpp +++ b/src/organizercore.cpp @@ -381,15 +381,15 @@ QSettings::Status OrganizerCore::storeSettings(const QString &fileName) for (; current != end; ++current) { const Executable &item = *current; settings.setArrayIndex(count++); - settings.setValue("title", item.m_Title); + settings.setValue("title", item.title()); settings.setValue("custom", item.isCustom()); settings.setValue("toolbar", item.isShownOnToolbar()); settings.setValue("ownicon", item.usesOwnIcon()); if (item.isCustom()) { - settings.setValue("binary", item.m_BinaryInfo.absoluteFilePath()); - settings.setValue("arguments", item.m_Arguments); - settings.setValue("workingDirectory", item.m_WorkingDirectory); - settings.setValue("steamAppID", item.m_SteamAppID); + settings.setValue("binary", item.binaryInfo().absoluteFilePath()); + settings.setValue("arguments", item.arguments()); + settings.setValue("workingDirectory", item.workingDirectory()); + settings.setValue("steamAppID", item.steamAppID()); } } settings.endArray(); @@ -1742,12 +1742,12 @@ HANDLE OrganizerCore::runShortcut(const MOShortcut& shortcut) } return spawnBinaryDirect( - exe.m_BinaryInfo, exe.m_Arguments, + exe.binaryInfo(), exe.arguments(), m_CurrentProfile->name(), - exe.m_WorkingDirectory.length() != 0 - ? exe.m_WorkingDirectory - : exe.m_BinaryInfo.absolutePath(), - exe.m_SteamAppID, + exe.workingDirectory().length() != 0 + ? exe.workingDirectory() + : exe.binaryInfo().absolutePath(), + exe.steamAppID(), "", forcedLibaries); } @@ -1787,12 +1787,12 @@ HANDLE OrganizerCore::startApplication(const QString &executable, } try { const Executable &exe = m_ExecutablesList.findByBinary(binary); - steamAppID = exe.m_SteamAppID; + steamAppID = exe.steamAppID(); customOverwrite - = m_CurrentProfile->setting("custom_overwrites", exe.m_Title) + = m_CurrentProfile->setting("custom_overwrites", exe.title()) .toString(); - if (m_CurrentProfile->forcedLibrariesEnabled(exe.m_Title)) { - forcedLibraries = m_CurrentProfile->determineForcedLibraries(exe.m_Title); + if (m_CurrentProfile->forcedLibrariesEnabled(exe.title())) { + forcedLibraries = m_CurrentProfile->determineForcedLibraries(exe.title()); } } catch (const std::runtime_error &) { // nop @@ -1801,19 +1801,19 @@ HANDLE OrganizerCore::startApplication(const QString &executable, // only a file name, search executables list try { const Executable &exe = m_ExecutablesList.find(executable); - steamAppID = exe.m_SteamAppID; + steamAppID = exe.steamAppID(); customOverwrite - = m_CurrentProfile->setting("custom_overwrites", exe.m_Title) + = m_CurrentProfile->setting("custom_overwrites", exe.title()) .toString(); - if (m_CurrentProfile->forcedLibrariesEnabled(exe.m_Title)) { - forcedLibraries = m_CurrentProfile->determineForcedLibraries(exe.m_Title); + if (m_CurrentProfile->forcedLibrariesEnabled(exe.title())) { + forcedLibraries = m_CurrentProfile->determineForcedLibraries(exe.title()); } if (arguments == "") { - arguments = exe.m_Arguments; + arguments = exe.arguments(); } - binary = exe.m_BinaryInfo; + binary = exe.binaryInfo(); if (cwd.length() == 0) { - currentDirectory = exe.m_WorkingDirectory; + currentDirectory = exe.workingDirectory(); } } catch (const std::runtime_error &) { qWarning("\"%s\" not set up as executable", |
