summaryrefslogtreecommitdiffstats
path: root/logic/lists/InstanceList.h
diff options
context:
space:
mode:
Diffstat (limited to 'logic/lists/InstanceList.h')
-rw-r--r--logic/lists/InstanceList.h152
1 files changed, 0 insertions, 152 deletions
diff --git a/logic/lists/InstanceList.h b/logic/lists/InstanceList.h
deleted file mode 100644
index f0bbb7ec..00000000
--- a/logic/lists/InstanceList.h
+++ /dev/null
@@ -1,152 +0,0 @@
-/* Copyright 2013 MultiMC Contributors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#pragma once
-
-#include <QObject>
-#include <QAbstractListModel>
-#include <QSet>
-#include <gui/groupview/GroupedProxyModel.h>
-#include <QIcon>
-
-#include "logic/BaseInstance.h"
-
-class BaseInstance;
-
-class QDir;
-
-struct FTBRecord
-{
- QString dirName;
- QString name;
- QString logo;
- QString mcVersion;
- QString description;
- QString instanceDir;
- QString templateDir;
-};
-
-class InstanceList : public QAbstractListModel
-{
- Q_OBJECT
-private:
- void loadGroupList(QMap<QString, QString> &groupList);
- QList<FTBRecord> discoverFTBInstances();
- void loadFTBInstances(QMap<QString, QString> &groupMap, QList<InstancePtr> & tempList);
-
-private
-slots:
- void saveGroupList();
-
-public:
- explicit InstanceList(const QString &instDir, QObject *parent = 0);
- virtual ~InstanceList();
-
-public:
- QModelIndex index(int row, int column = 0, const QModelIndex &parent = QModelIndex()) const;
- int rowCount(const QModelIndex &parent = QModelIndex()) const;
- QVariant data(const QModelIndex &index, int role) const;
- Qt::ItemFlags flags(const QModelIndex &index) const;
-
- enum AdditionalRoles
- {
- InstancePointerRole = 0x34B1CB48, ///< Return pointer to real instance
- InstanceIDRole = 0x34B1CB49 ///< Return id if the instance
- };
- /*!
- * \brief Error codes returned by functions in the InstanceList class.
- * NoError Indicates that no error occurred.
- * UnknownError indicates that an unspecified error occurred.
- */
- enum InstListError
- {
- NoError = 0,
- UnknownError
- };
-
- QString instDir() const
- {
- return m_instDir;
- }
-
- /*!
- * \brief Get the instance at index
- */
- InstancePtr at(int i) const
- {
- return m_instances.at(i);
- }
- ;
-
- /*!
- * \brief Get the count of loaded instances
- */
- int count() const
- {
- return m_instances.count();
- }
- ;
-
- /// Clear all instances. Triggers notifications.
- void clear();
-
- /// Add an instance. Triggers notifications, returns the new index
- int add(InstancePtr t);
-
- /// Get an instance by ID
- InstancePtr getInstanceById(QString id) const;
-
- QModelIndex getInstanceIndexById(const QString &id) const;
-
- // FIXME: instead of iterating through all instances and forming a set, keep the set around
- QStringList getGroups();
-signals:
- void dataIsInvalid();
-
-public
-slots:
- void on_InstFolderChanged(const Setting &setting, QVariant value);
-
- /*!
- * \brief Loads the instance list. Triggers notifications.
- */
- InstListError loadList();
-
-private
-slots:
- void propertiesChanged(BaseInstance *inst);
- void instanceNuked(BaseInstance *inst);
- void groupChanged();
-
-private:
- int getInstIndex(BaseInstance *inst) const;
-
- bool continueProcessInstance(InstancePtr instPtr, const int error, const QDir &dir,
- QMap<QString, QString> &groupMap);
-
-protected:
- QString m_instDir;
- QList<InstancePtr> m_instances;
- QSet<QString> m_groups;
-};
-
-class InstanceProxyModel : public GroupedProxyModel
-{
-public:
- explicit InstanceProxyModel(QObject *parent = 0);
-
-protected:
- virtual bool subSortLessThan(const QModelIndex &left, const QModelIndex &right) const;
-};