aboutsummaryrefslogtreecommitdiff
path: root/libs/game_gamebryo/src/gamebryo/gamebryogameplugins.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/game_gamebryo/src/gamebryo/gamebryogameplugins.h')
-rw-r--r--libs/game_gamebryo/src/gamebryo/gamebryogameplugins.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/libs/game_gamebryo/src/gamebryo/gamebryogameplugins.h b/libs/game_gamebryo/src/gamebryo/gamebryogameplugins.h
new file mode 100644
index 0000000..ca70c75
--- /dev/null
+++ b/libs/game_gamebryo/src/gamebryo/gamebryogameplugins.h
@@ -0,0 +1,38 @@
+#ifndef GAMEBRYOGAMEPLUGINS_H
+#define GAMEBRYOGAMEPLUGINS_H
+
+#include <QDateTime>
+#include <QStringList>
+#include <gameplugins.h>
+#include <imoinfo.h>
+
+class GamebryoGamePlugins : public MOBase::GamePlugins
+{
+public:
+ GamebryoGamePlugins(MOBase::IOrganizer* organizer);
+
+ virtual void writePluginLists(const MOBase::IPluginList* pluginList) override;
+ virtual void readPluginLists(MOBase::IPluginList* pluginList) override;
+ virtual QStringList getLoadOrder() override;
+
+protected:
+ MOBase::IOrganizer* organizer() const { return m_Organizer; }
+
+ virtual void writePluginList(const MOBase::IPluginList* pluginList,
+ const QString& filePath);
+ virtual void writeLoadOrderList(const MOBase::IPluginList* pluginList,
+ const QString& filePath);
+ virtual QStringList readLoadOrderList(MOBase::IPluginList* pluginList,
+ const QString& filePath);
+ virtual QStringList readPluginList(MOBase::IPluginList* pluginList);
+
+protected:
+ MOBase::IOrganizer* m_Organizer;
+ QDateTime m_LastRead;
+
+private:
+ void writeList(const MOBase::IPluginList* pluginList, const QString& filePath,
+ bool loadOrder);
+};
+
+#endif // GAMEBRYOGAMEPLUGINS_H