summaryrefslogtreecommitdiffstats
path: root/api/logic/meta/VersionList.h
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2017-03-24 02:26:06 +0100
committerPetr Mrázek <peterix@gmail.com>2017-04-07 00:20:02 +0200
commitda4ae1bc1ec74cdb4e75f4ebac30886ba4a1909c (patch)
treec6db08bd02bd991c2370ca62f43249afaf3fe156 /api/logic/meta/VersionList.h
parent77f27a628f33a591f7562ca05c206ac604212443 (diff)
downloadMultiMC-da4ae1bc1ec74cdb4e75f4ebac30886ba4a1909c.tar
MultiMC-da4ae1bc1ec74cdb4e75f4ebac30886ba4a1909c.tar.gz
MultiMC-da4ae1bc1ec74cdb4e75f4ebac30886ba4a1909c.tar.lz
MultiMC-da4ae1bc1ec74cdb4e75f4ebac30886ba4a1909c.tar.xz
MultiMC-da4ae1bc1ec74cdb4e75f4ebac30886ba4a1909c.zip
NOISSUE reimplement package dependencies
It is now stored as a hashmap There is also a parentUid to limit depsolving by encapsulating by version
Diffstat (limited to 'api/logic/meta/VersionList.h')
-rw-r--r--api/logic/meta/VersionList.h28
1 files changed, 22 insertions, 6 deletions
diff --git a/api/logic/meta/VersionList.h b/api/logic/meta/VersionList.h
index 08d71230..faacdbf8 100644
--- a/api/logic/meta/VersionList.h
+++ b/api/logic/meta/VersionList.h
@@ -15,8 +15,8 @@
#pragma once
-#include "BaseVersionList.h"
#include "BaseEntity.h"
+#include "BaseVersionList.h"
#include <QJsonObject>
#include <memory>
@@ -56,16 +56,30 @@ public:
QString localFilename() const override;
- QString uid() const { return m_uid; }
- QString name() const { return m_name; }
+ QString parentUid() const
+ {
+ return m_parentUid;
+ }
+ QString uid() const
+ {
+ return m_uid;
+ }
+ QString name() const
+ {
+ return m_name;
+ }
QString humanReadable() const;
VersionPtr getVersion(const QString &version);
- QVector<VersionPtr> versions() const { return m_versions; }
+ QVector<VersionPtr> versions() const
+ {
+ return m_versions;
+ }
public: // for usage only by parsers
void setName(const QString &name);
+ void setParentUid(const QString &parentUid);
void setVersions(const QVector<VersionPtr> &versions);
void merge(const BaseEntity::Ptr &other) override;
void parse(const QJsonObject &obj) override;
@@ -74,12 +88,15 @@ signals:
void nameChanged(const QString &name);
protected slots:
- void updateListData(QList<BaseVersionPtr>) override {}
+ void updateListData(QList<BaseVersionPtr>) override
+ {
+ }
private:
QVector<VersionPtr> m_versions;
QHash<QString, VersionPtr> m_lookup;
QString m_uid;
+ QString m_parentUid;
QString m_name;
VersionPtr m_recommended;
@@ -87,6 +104,5 @@ private:
void setupAddedVersion(const int row, const VersionPtr &version);
};
-
}
Q_DECLARE_METATYPE(Meta::VersionListPtr)