summaryrefslogtreecommitdiffstats
path: root/logic/lists
diff options
context:
space:
mode:
Diffstat (limited to 'logic/lists')
-rw-r--r--logic/lists/InstanceList.cpp7
-rw-r--r--logic/lists/InstanceList.h3
2 files changed, 9 insertions, 1 deletions
diff --git a/logic/lists/InstanceList.cpp b/logic/lists/InstanceList.cpp
index b9595578..94481fb9 100644
--- a/logic/lists/InstanceList.cpp
+++ b/logic/lists/InstanceList.cpp
@@ -36,11 +36,16 @@ const static int GROUP_FILE_FORMAT_VERSION = 1;
InstanceList::InstanceList(const QString &instDir, QObject *parent)
: QAbstractListModel(parent), m_instDir(instDir)
{
+ connect(MMC, &MultiMC::aboutToQuit, this, &InstanceList::saveGroupList);
+
+ if (!QDir::current().exists(m_instDir))
+ {
+ QDir::current().mkpath(m_instDir);
+ }
}
InstanceList::~InstanceList()
{
- saveGroupList();
}
int InstanceList::rowCount(const QModelIndex &parent) const
diff --git a/logic/lists/InstanceList.h b/logic/lists/InstanceList.h
index 8cd39746..c3bb74cd 100644
--- a/logic/lists/InstanceList.h
+++ b/logic/lists/InstanceList.h
@@ -29,6 +29,9 @@ class InstanceList : public QAbstractListModel
Q_OBJECT
private:
void loadGroupList(QMap<QString, QString> &groupList);
+
+private
+slots:
void saveGroupList();
public: