MCPcopy Create free account
hub / github.com/PolyMC/PolyMC / setSourceModel

Method setSourceModel

launcher/VersionProxyModel.cpp:340–395  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

338}
339
340void VersionProxyModel::setSourceModel(QAbstractItemModel *replacingRaw)
341{
342 auto replacing = dynamic_cast<BaseVersionList *>(replacingRaw);
343 beginResetModel();
344
345 m_columns.clear();
346 if(!replacing)
347 {
348 roles.clear();
349 filterModel->setSourceModel(replacing);
350 return;
351 }
352
353 roles = replacing->providesRoles();
354 if(roles.contains(BaseVersionList::VersionRole))
355 {
356 m_columns.push_back(Name);
357 }
358 /*
359 if(roles.contains(BaseVersionList::ParentVersionRole))
360 {
361 m_columns.push_back(ParentVersion);
362 }
363 */
364 if(roles.contains(BaseVersionList::ArchitectureRole))
365 {
366 m_columns.push_back(Architecture);
367 }
368 if(roles.contains(BaseVersionList::PathRole))
369 {
370 m_columns.push_back(Path);
371 }
372 if(roles.contains(Meta::VersionList::TimeRole))
373 {
374 m_columns.push_back(Time);
375 }
376 if(roles.contains(BaseVersionList::BranchRole))
377 {
378 m_columns.push_back(Branch);
379 }
380 if(roles.contains(BaseVersionList::TypeRole))
381 {
382 m_columns.push_back(Type);
383 }
384 if(roles.contains(BaseVersionList::RecommendedRole))
385 {
386 hasRecommended = true;
387 }
388 if(roles.contains(BaseVersionList::LatestRole))
389 {
390 hasLatest = true;
391 }
392 filterModel->setSourceModel(replacing);
393
394 endResetModel();
395}
396
397QModelIndex VersionProxyModel::getRecommended() const

Callers 12

MainWindowMethod · 0.80
AtlPageMethod · 0.80
PageMethod · 0.80
FtbPageMethod · 0.80
ScreenshotsPageMethod · 0.80
VersionPageMethod · 0.80
ExternalResourcesPageMethod · 0.80
WorldListPageMethod · 0.80
PageContainerMethod · 0.80
initializeMethod · 0.80
ExportInstanceDialogMethod · 0.80

Calls 3

clearMethod · 0.45
providesRolesMethod · 0.45
containsMethod · 0.45

Tested by

no test coverage detected