diff options
author | Jan Dalheimer <jan@dalheimer.de> | 2014-02-16 10:46:14 +0100 |
---|---|---|
committer | Jan Dalheimer <jan@dalheimer.de> | 2014-02-16 10:46:14 +0100 |
commit | 616c37269053bc4f111792dbb9374cc119a58339 (patch) | |
tree | 7ac3bc3bbec628593473bc87ffcec9acf24e990b /logic/BaseExternalTool.cpp | |
parent | 994972bf5da5584186e6e82c36287afeb6c1e23a (diff) | |
download | PrismLauncher-616c37269053bc4f111792dbb9374cc119a58339.tar.gz PrismLauncher-616c37269053bc4f111792dbb9374cc119a58339.tar.bz2 PrismLauncher-616c37269053bc4f111792dbb9374cc119a58339.zip |
Fix more stuff. Detached tools, only MCEdit for now.
Diffstat (limited to 'logic/BaseExternalTool.cpp')
-rw-r--r-- | logic/BaseExternalTool.cpp | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/logic/BaseExternalTool.cpp b/logic/BaseExternalTool.cpp new file mode 100644 index 00000000..6dffb4d6 --- /dev/null +++ b/logic/BaseExternalTool.cpp @@ -0,0 +1,47 @@ +#include "BaseExternalTool.h" + +#include <QProcess> +#ifdef Q_OS_WIN +#include <windows.h> +#endif + +BaseExternalTool::BaseExternalTool(BaseInstance *instance, QObject *parent) + : QObject(parent), m_instance(instance) +{ +} + +BaseExternalTool::~BaseExternalTool() +{ +} + +qint64 BaseExternalTool::pid(QProcess *process) +{ +#ifdef Q_OS_WIN + struct _PROCESS_INFORMATION *procinfo = process->pid(); + return procinfo->dwProcessId; +#else + return process->pid(); +#endif +} + + +BaseDetachedTool::BaseDetachedTool(BaseInstance *instance, QObject *parent) + : BaseExternalTool(instance, parent) +{ + +} + +void BaseDetachedTool::run() +{ + runImpl(); +} + + +BaseExternalToolFactory::~BaseExternalToolFactory() +{ +} + +BaseDetachedTool *BaseDetachedToolFactory::createDetachedTool(BaseInstance *instance, QObject *parent) +{ + return qobject_cast<BaseDetachedTool *>(createTool(instance, parent)); +} |