mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-25 07:21:14 +01:00
GameListModel: invert role-column choice tree
This commit is contained in:
parent
1afb0a134d
commit
051cbf1962
@ -21,17 +21,24 @@ QVariant GameListModel::data(const QModelIndex& index, int role) const
|
||||
return QVariant();
|
||||
|
||||
QSharedPointer<GameFile> game = m_games[index.row()];
|
||||
if (role == Qt::DecorationRole)
|
||||
|
||||
switch (index.column())
|
||||
{
|
||||
switch (index.column())
|
||||
{
|
||||
case COL_PLATFORM:
|
||||
case COL_PLATFORM:
|
||||
if (role == Qt::DecorationRole)
|
||||
return Resources::GetPlatform(static_cast<int>(game->GetPlatformID()));
|
||||
case COL_COUNTRY:
|
||||
break;
|
||||
case COL_COUNTRY:
|
||||
if (role == Qt::DecorationRole)
|
||||
return Resources::GetCountry(static_cast<int>(game->GetCountryID()));
|
||||
case COL_RATING:
|
||||
break;
|
||||
case COL_RATING:
|
||||
if (role == Qt::DecorationRole)
|
||||
return Resources::GetRating(game->GetRating());
|
||||
case COL_BANNER:
|
||||
break;
|
||||
case COL_BANNER:
|
||||
if (role == Qt::DecorationRole)
|
||||
{
|
||||
// GameCube banners are 96x32, but Wii banners are 192x64.
|
||||
// TODO: use custom banners from rom directory like DolphinWX?
|
||||
QPixmap banner = game->GetBanner();
|
||||
@ -39,23 +46,29 @@ QVariant GameListModel::data(const QModelIndex& index, int role) const
|
||||
banner.height() / GAMECUBE_BANNER_SIZE.height()));
|
||||
return banner;
|
||||
}
|
||||
}
|
||||
if (role == Qt::DisplayRole)
|
||||
{
|
||||
switch (index.column())
|
||||
{
|
||||
case COL_TITLE:
|
||||
break;
|
||||
case COL_TITLE:
|
||||
if (role == Qt::DisplayRole)
|
||||
return game->GetLongName();
|
||||
case COL_ID:
|
||||
break;
|
||||
case COL_ID:
|
||||
if (role == Qt::DisplayRole)
|
||||
return game->GetGameID();
|
||||
case COL_DESCRIPTION:
|
||||
break;
|
||||
case COL_DESCRIPTION:
|
||||
if (role == Qt::DisplayRole)
|
||||
return game->GetDescription();
|
||||
case COL_MAKER:
|
||||
break;
|
||||
case COL_MAKER:
|
||||
if (role == Qt::DisplayRole)
|
||||
return game->GetMaker();
|
||||
case COL_SIZE:
|
||||
break;
|
||||
case COL_SIZE:
|
||||
if (role == Qt::DisplayRole)
|
||||
return FormatSize(game->GetFileSize());
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user