MCPcopy Create free account
hub / github.com/FreesmTeam/FreesmLauncher / setVersions

Method setVersions

launcher/meta/VersionList.cpp:172–188  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

170}
171
172void VersionList::setVersions(const QVector<Version::Ptr>& versions)
173{
174 beginResetModel();
175 m_versions = versions;
176 std::sort(m_versions.begin(), m_versions.end(),
177 [](const Version::Ptr& a, const Version::Ptr& b) { return a->rawTime() > b->rawTime(); });
178 for (int i = 0; i < m_versions.size(); ++i) {
179 m_lookup.insert(m_versions.at(i)->version(), m_versions.at(i));
180 setupAddedVersion(i, m_versions.at(i));
181 }
182
183 // FIXME: this is dumb, we have 'recommended' as part of the metadata already...
184 auto recommendedIt =
185 std::find_if(m_versions.constBegin(), m_versions.constEnd(), [](const Version::Ptr& ptr) { return ptr->type() == "release"; });
186 m_recommended = recommendedIt == m_versions.constEnd() ? nullptr : *recommendedIt;
187 endResetModel();
188}
189
190void VersionList::parse(const QJsonObject& obj)
191{

Callers 1

parseVersionListInternalFunction · 0.80

Calls 6

rawTimeMethod · 0.80
insertMethod · 0.80
sizeMethod · 0.45
versionMethod · 0.45
atMethod · 0.45
typeMethod · 0.45

Tested by

no test coverage detected