From 432ec7417499c6fa6b0c2935c96ad5f3d1d097c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Mon, 11 Apr 2016 01:30:50 +0200 Subject: GH-1404 allow deleting groups and creating instances in groups directly using context menu --- logic/InstanceList.h | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'logic/InstanceList.h') diff --git a/logic/InstanceList.h b/logic/InstanceList.h index 3dbfaf70..074cca7c 100644 --- a/logic/InstanceList.h +++ b/logic/InstanceList.h @@ -31,9 +31,10 @@ class MULTIMC_LOGIC_EXPORT InstanceList : public QAbstractListModel Q_OBJECT private: void loadGroupList(QMap &groupList); + void suspendGroupSaving(); + void resumeGroupSaving(); -public -slots: +public slots: void saveGroupList(); public: @@ -116,6 +117,8 @@ public: // FIXME: instead of iterating through all instances and forming a set, keep the set around QStringList getGroups(); + void deleteGroup(const QString & name); + /*! * \brief Creates a stub instance * @@ -155,8 +158,7 @@ public: signals: void dataIsInvalid(); -public -slots: +public slots: void on_InstFolderChanged(const Setting &setting, QVariant value); /*! @@ -164,8 +166,7 @@ slots: */ InstListError loadList(); -private -slots: +private slots: void propertiesChanged(BaseInstance *inst); void instanceNuked(BaseInstance *inst); void groupChanged(); @@ -174,12 +175,13 @@ private: int getInstIndex(BaseInstance *inst) const; public: - static bool continueProcessInstance(InstancePtr instPtr, const int error, const QDir &dir, - QMap &groupMap); + static bool continueProcessInstance(InstancePtr instPtr, const int error, const QDir &dir, QMap &groupMap); protected: QString m_instDir; QList m_instances; QSet m_groups; SettingsObjectPtr m_globalSettings; + bool suspendedGroupSave = false; + bool queuedGroupSave = false; }; -- cgit v1.2.3