From d62e6ffbb37ce70a49754bfc692788dac94b4e02 Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Sun, 24 Jan 2021 14:24:13 +1000 Subject: [PATCH] Qt: Add icons for unknown region and PSF files in game list --- src/duckstation-qt/gamelistmodel.cpp | 6 ++++++ src/duckstation-qt/gamelistmodel.h | 2 ++ .../resources/icons/flag-other.png | Bin 0 -> 682 bytes .../resources/icons/flag-other@2x.png | Bin 0 -> 954 bytes .../resources/icons/multimedia-player.png | Bin 0 -> 1928 bytes .../resources/icons/multimedia-player@2x.png | Bin 0 -> 4475 bytes src/duckstation-qt/resources/resources.qrc | 4 ++++ 7 files changed, 12 insertions(+) create mode 100644 src/duckstation-qt/resources/icons/flag-other.png create mode 100644 src/duckstation-qt/resources/icons/flag-other@2x.png create mode 100644 src/duckstation-qt/resources/icons/multimedia-player.png create mode 100644 src/duckstation-qt/resources/icons/multimedia-player@2x.png diff --git a/src/duckstation-qt/gamelistmodel.cpp b/src/duckstation-qt/gamelistmodel.cpp index 685c6a7d8..3518ed734 100644 --- a/src/duckstation-qt/gamelistmodel.cpp +++ b/src/duckstation-qt/gamelistmodel.cpp @@ -225,6 +225,8 @@ QVariant GameListModel::data(const QModelIndex& index, int role) const return m_type_disc_pixmap; case GameListEntryType::Playlist: return m_type_playlist_pixmap; + case GameListEntryType::PSF: + return m_type_psf_pixmap; case GameListEntryType::PSExe: default: return m_type_exe_pixmap; @@ -239,6 +241,8 @@ QVariant GameListModel::data(const QModelIndex& index, int role) const return m_region_jp_pixmap; case DiscRegion::NTSC_U: return m_region_us_pixmap; + case DiscRegion::Other: + return m_region_other_pixmap; case DiscRegion::PAL: default: return m_region_eu_pixmap; @@ -401,9 +405,11 @@ void GameListModel::loadCommonImages() m_type_disc_pixmap = QIcon(QStringLiteral(":/icons/media-optical-24.png")).pixmap(QSize(24, 24)); m_type_exe_pixmap = QIcon(QStringLiteral(":/icons/applications-system-24.png")).pixmap(QSize(24, 24)); m_type_playlist_pixmap = QIcon(QStringLiteral(":/icons/address-book-new-22.png")).pixmap(QSize(22, 22)); + m_type_psf_pixmap = QIcon(QStringLiteral(":/icons/multimedia-player.png")).pixmap(QSize(22, 22)); m_region_eu_pixmap = QIcon(QStringLiteral(":/icons/flag-eu.png")).pixmap(QSize(42, 30)); m_region_jp_pixmap = QIcon(QStringLiteral(":/icons/flag-jp.png")).pixmap(QSize(42, 30)); m_region_us_pixmap = QIcon(QStringLiteral(":/icons/flag-uc.png")).pixmap(QSize(42, 30)); + m_region_other_pixmap = QIcon(QStringLiteral(":/icons/flag-other.png")).pixmap(QSize(42, 30)); for (int i = 0; i < static_cast(GameListCompatibilityRating::Count); i++) m_compatibiliy_pixmaps[i].load(QStringLiteral(":/icons/star-%1.png").arg(i)); diff --git a/src/duckstation-qt/gamelistmodel.h b/src/duckstation-qt/gamelistmodel.h index 216fd0a86..8331be250 100644 --- a/src/duckstation-qt/gamelistmodel.h +++ b/src/duckstation-qt/gamelistmodel.h @@ -69,10 +69,12 @@ private: QPixmap m_type_disc_pixmap; QPixmap m_type_exe_pixmap; QPixmap m_type_playlist_pixmap; + QPixmap m_type_psf_pixmap; QPixmap m_region_jp_pixmap; QPixmap m_region_eu_pixmap; QPixmap m_region_us_pixmap; + QPixmap m_region_other_pixmap; std::array(GameListCompatibilityRating::Count)> m_compatibiliy_pixmaps; mutable std::unordered_map m_cover_pixmap_cache; diff --git a/src/duckstation-qt/resources/icons/flag-other.png b/src/duckstation-qt/resources/icons/flag-other.png new file mode 100644 index 0000000000000000000000000000000000000000..fe5210eea5ca818dcb5dfcef3faa3dca07e61254 GIT binary patch literal 682 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 O0000C5D5SWbQR$T00bfc;HMJ+XuSpi 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 literal 0 HcmV?d00001 diff --git a/src/duckstation-qt/resources/resources.qrc b/src/duckstation-qt/resources/resources.qrc index 7138f84e5..1d9ba5554 100644 --- a/src/duckstation-qt/resources/resources.qrc +++ b/src/duckstation-qt/resources/resources.qrc @@ -56,6 +56,8 @@ icons/flag-eu@2x.png icons/flag-jp.png icons/flag-jp@2x.png + icons/flag-other.png + icons/flag-other@2x.png icons/flag-uc.png icons/flag-uc@2x.png icons/flag-us.png @@ -88,6 +90,8 @@ icons/media-playback-start@2x.png icons/media-record.png icons/media-record@2x.png + icons/multimedia-player.png + icons/multimedia-player@2x.png icons/preferences-desktop-keyboard-shortcuts.png icons/preferences-desktop-keyboard-shortcuts@2x.png icons/preferences-system.png