From 4fb79cae456986795be3f504d440048e476dffb3 Mon Sep 17 00:00:00 2001 From: isanae <14251494+isanae@users.noreply.github.com> Date: Fri, 18 Oct 2019 23:11:19 -0400 Subject: renamed executeFileVirtualized() to runFile() renamed spawnBinary() to runExecutable() renamed spawnBinaryDirect() to spawnAndWait() --- src/organizercore.cpp | 78 +++++++++++++++++++++++++-------------------------- src/organizercore.h | 15 +++++----- 2 files changed, 47 insertions(+), 46 deletions(-) (limited to 'src') diff --git a/src/organizercore.cpp b/src/organizercore.cpp index 3bb6af70..4270f3b4 100644 --- a/src/organizercore.cpp +++ b/src/organizercore.cpp @@ -1046,40 +1046,6 @@ bool OrganizerCore::getFileExecutionContext( } } -bool OrganizerCore::executeFileVirtualized( - QWidget* parent, const QFileInfo& targetInfo) -{ - QFileInfo binaryInfo; - QString arguments; - FileExecutionTypes type; - - if (!getFileExecutionContext(parent, targetInfo, binaryInfo, arguments, type)) { - return false; - } - - switch (type) - { - case FileExecutionTypes::Executable: { - spawnBinaryDirect( - binaryInfo, arguments, currentProfile()->name(), - targetInfo.absolutePath(), "", ""); - - return true; - } - - case FileExecutionTypes::Other: { - ::ShellExecuteW(nullptr, L"open", - ToWString(targetInfo.absoluteFilePath()).c_str(), - nullptr, nullptr, SW_SHOWNORMAL); - - return true; - } - } - - // nop - return false; -} - bool OrganizerCore::previewFileWithAlternatives( QWidget* parent, QString fileName, int selectedOrigin) { @@ -1208,14 +1174,48 @@ bool OrganizerCore::previewFile( return true; } -void OrganizerCore::spawnBinary( +bool OrganizerCore::runFile( + QWidget* parent, const QFileInfo& targetInfo) +{ + QFileInfo binaryInfo; + QString arguments; + FileExecutionTypes type; + + if (!getFileExecutionContext(parent, targetInfo, binaryInfo, arguments, type)) { + return false; + } + + switch (type) + { + case FileExecutionTypes::Executable: { + runExecutable( + binaryInfo, arguments, currentProfile()->name(), + targetInfo.absolutePath()); + + return true; + } + + case FileExecutionTypes::Other: { + ::ShellExecuteW(nullptr, L"open", + ToWString(targetInfo.absoluteFilePath()).c_str(), + nullptr, nullptr, SW_SHOWNORMAL); + + return true; + } + } + + // nop + return false; +} + +void OrganizerCore::runExecutable( const QFileInfo &binary, const QString &arguments, const QDir ¤tDirectory, const QString &steamAppID, const QString &customOverwrite, const QList &forcedLibraries) { DWORD processExitCode = 0; - HANDLE processHandle = spawnBinaryDirect( + HANDLE processHandle = spawnAndWait( binary, arguments, m_CurrentProfile->name(), currentDirectory, steamAppID, customOverwrite, forcedLibraries, &processExitCode); @@ -1237,7 +1237,7 @@ void OrganizerCore::spawnBinary( } } -HANDLE OrganizerCore::spawnBinaryDirect( +HANDLE OrganizerCore::spawnAndWait( const QFileInfo &binary, const QString &arguments, const QString &profileName, const QDir ¤tDirectory, const QString &steamAppID, const QString &customOverwrite, @@ -1334,7 +1334,7 @@ HANDLE OrganizerCore::runShortcut(const MOShortcut& shortcut) forcedLibaries.clear(); } - return spawnBinaryDirect( + return spawnAndWait( exe.binaryInfo(), exe.arguments(), m_CurrentProfile->name(), exe.workingDirectory().length() != 0 @@ -1419,7 +1419,7 @@ HANDLE OrganizerCore::startApplication(const QString &executable, if (ignoreCustomOverwrite) customOverwrite.clear(); - return spawnBinaryDirect(binary, + return spawnAndWait(binary, arguments, profileName, currentDirectory, diff --git a/src/organizercore.h b/src/organizercore.h index 4a8f90d1..6628452c 100644 --- a/src/organizercore.h +++ b/src/organizercore.h @@ -158,15 +158,16 @@ public: QWidget* parent, const QFileInfo &targetInfo, QFileInfo &binaryInfo, QString &arguments, FileExecutionTypes& type); - bool executeFileVirtualized(QWidget* parent, const QFileInfo& targetInfo); bool previewFileWithAlternatives(QWidget* parent, QString filename, int selectedOrigin=-1); bool previewFile(QWidget* parent, const QString& originName, const QString& path); - void spawnBinary(const QFileInfo &binary, const QString &arguments = "", - const QDir ¤tDirectory = QDir(), - const QString &steamAppID = "", - const QString &customOverwrite = "", - const QList &forcedLibraries = QList()); + bool runFile(QWidget* parent, const QFileInfo& targetInfo); + + void runExecutable( + const QFileInfo &binary, const QString &arguments, + const QDir ¤tDirectory, const QString &steamAppID={}, + const QString &customOverwrite={}, + const QList &forcedLibraries={}); void loginSuccessfulUpdate(bool necessary); void loginFailedUpdate(const QString &message); @@ -300,7 +301,7 @@ private: const MOShared::DirectoryEntry *directoryEntry, int createDestination); - HANDLE spawnBinaryDirect(const QFileInfo &binary, const QString &arguments, + HANDLE spawnAndWait(const QFileInfo &binary, const QString &arguments, const QString &profileName, const QDir ¤tDirectory, const QString &steamAppID, -- cgit v1.3.1