From cde658cb271afb1484ddc89bde6a1979046a239d Mon Sep 17 00:00:00 2001 From: Lioncash Date: Sat, 29 Aug 2020 14:23:35 -0400 Subject: [PATCH 1/2] game_list_p: Mark some constants as constexpr Consistency change with how we mark constants in the rest of the codebase. --- src/yuzu/game_list_p.h | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/yuzu/game_list_p.h b/src/yuzu/game_list_p.h index 0cd0054c8b..eb1bf07753 100644 --- a/src/yuzu/game_list_p.h +++ b/src/yuzu/game_list_p.h @@ -49,10 +49,10 @@ class GameListItem : public QStandardItem { public: // used to access type from item index - static const int TypeRole = Qt::UserRole + 1; - static const int SortRole = Qt::UserRole + 2; + static constexpr int TypeRole = Qt::UserRole + 1; + static constexpr int SortRole = Qt::UserRole + 2; GameListItem() = default; - GameListItem(const QString& string) : QStandardItem(string) { + explicit GameListItem(const QString& string) : QStandardItem(string) { setData(string, SortRole); } }; @@ -65,10 +65,10 @@ public: */ class GameListItemPath : public GameListItem { public: - static const int TitleRole = SortRole + 1; - static const int FullPathRole = SortRole + 2; - static const int ProgramIdRole = SortRole + 3; - static const int FileTypeRole = SortRole + 4; + static constexpr int TitleRole = SortRole + 1; + static constexpr int FullPathRole = SortRole + 2; + static constexpr int ProgramIdRole = SortRole + 3; + static constexpr int FileTypeRole = SortRole + 4; GameListItemPath() = default; GameListItemPath(const QString& game_path, const std::vector& picture_data, @@ -131,7 +131,7 @@ public: class GameListItemCompat : public GameListItem { Q_DECLARE_TR_FUNCTIONS(GameListItemCompat) public: - static const int CompatNumberRole = SortRole; + static constexpr int CompatNumberRole = SortRole; GameListItemCompat() = default; explicit GameListItemCompat(const QString& compatibility) { setData(type(), TypeRole); @@ -181,7 +181,7 @@ public: */ class GameListItemSize : public GameListItem { public: - static const int SizeRole = SortRole; + static constexpr int SizeRole = SortRole; GameListItemSize() = default; explicit GameListItemSize(const qulonglong size_bytes) { @@ -217,7 +217,7 @@ public: class GameListDir : public GameListItem { public: - static const int GameDirRole = Qt::UserRole + 2; + static constexpr int GameDirRole = Qt::UserRole + 2; explicit GameListDir(UISettings::GameDir& directory, GameListItemType dir_type = GameListItemType::CustomDir) From fae65d8a72e9d1a987797d910fb63b76d5590856 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Sat, 29 Aug 2020 14:30:49 -0400 Subject: [PATCH 2/2] game_list_p: Avoid string churn in GameListItemPath data() --- src/yuzu/game_list_p.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/yuzu/game_list_p.h b/src/yuzu/game_list_p.h index eb1bf07753..92779a9c7b 100644 --- a/src/yuzu/game_list_p.h +++ b/src/yuzu/game_list_p.h @@ -110,18 +110,22 @@ public: const auto& row1 = row_data.at(UISettings::values.row_1_text_id); const int row2_id = UISettings::values.row_2_text_id; - if (role == SortRole) + if (role == SortRole) { return row1.toLower(); + } - if (row2_id == 4) // None + // None + if (row2_id == 4) { return row1; + } const auto& row2 = row_data.at(row2_id); - if (row1 == row2) + if (row1 == row2) { return row1; + } - return QString(row1 + QStringLiteral("\n ") + row2); + return QStringLiteral("%1\n %2").arg(row1, row2); } return GameListItem::data(role);