summaryrefslogtreecommitdiff
path: root/src/iuserinterface.h
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2014-11-21 14:45:30 +0100
committerTannin <devnull@localhost>2014-11-21 14:45:30 +0100
commitf2f9e11fdd876821107cff0c1c5b9d8ecf66691f (patch)
treeac27533947a8f7a28545cf1f1901647242c03b53 /src/iuserinterface.h
parentd23466f036618760de16ee874a3c076f05fe6087 (diff)
- started on a refactoring moving functionality out of the MainWindow class
- started on support for game-plugins
Diffstat (limited to 'src/iuserinterface.h')
-rw-r--r--src/iuserinterface.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/iuserinterface.h b/src/iuserinterface.h
new file mode 100644
index 00000000..76d4c75a
--- /dev/null
+++ b/src/iuserinterface.h
@@ -0,0 +1,39 @@
+#ifndef IUSERINTERFACE_H
+#define IUSERINTERFACE_H
+
+
+#include "modinfo.h"
+#include <iplugintool.h>
+#include <ipluginmodpage.h>
+
+
+class IUserInterface
+{
+public:
+
+ void storeSettings(QSettings &settings);
+
+ virtual HANDLE startApplication(const QString &executable, const QStringList &args = QStringList(), const QString &cwd = "", const QString &profile = "") = 0;
+
+ virtual bool waitForProcessOrJob(HANDLE processHandle, LPDWORD exitCode = NULL) = 0;
+
+ virtual void registerPluginTool(MOBase::IPluginTool *tool) = 0;
+ virtual void registerModPage(MOBase::IPluginModPage *modPage) = 0;
+
+ virtual void installTranslator(const QString &name) = 0;
+
+ virtual void disconnectPlugins() = 0;
+
+ virtual bool close() = 0;
+
+ virtual void setEnabled(bool enabled) = 0;
+
+ virtual void displayModInformation(ModInfo::Ptr modInfo, unsigned int index, int tab) = 0;
+
+ virtual void updateBSAList(const QStringList &defaultArchives, const QStringList &activeArchives) = 0;
+
+ virtual bool saveArchiveList() = 0;
+
+};
+
+#endif // IUSERINTERFACE_H