gt/game_list: Use std::array in GameListItemPath's data() function
We don't need to use a heap-allocated std::vector here, given we explicitly know the bounds.
This commit is contained in:
parent
be53097577
commit
aaf671a309
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <array>
|
||||||
#include <atomic>
|
#include <atomic>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <QImage>
|
#include <QImage>
|
||||||
|
@ -39,6 +40,7 @@ public:
|
||||||
* If this class receives valid SMDH data, it will also display game icons and titles.
|
* If this class receives valid SMDH data, it will also display game icons and titles.
|
||||||
*/
|
*/
|
||||||
class GameListItemPath : public GameListItem {
|
class GameListItemPath : public GameListItem {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
static const int FullPathRole = Qt::UserRole + 1;
|
static const int FullPathRole = Qt::UserRole + 1;
|
||||||
static const int TitleRole = Qt::UserRole + 2;
|
static const int TitleRole = Qt::UserRole + 2;
|
||||||
|
@ -68,17 +70,16 @@ public:
|
||||||
std::string filename;
|
std::string filename;
|
||||||
Common::SplitPath(data(FullPathRole).toString().toStdString(), nullptr, &filename,
|
Common::SplitPath(data(FullPathRole).toString().toStdString(), nullptr, &filename,
|
||||||
nullptr);
|
nullptr);
|
||||||
QString title = data(TitleRole).toString();
|
|
||||||
|
|
||||||
std::vector<QString> row_data{
|
const std::array<QString, 4> row_data{{
|
||||||
QString::fromStdString(filename),
|
QString::fromStdString(filename),
|
||||||
data(FileTypeRole).toString(),
|
data(FileTypeRole).toString(),
|
||||||
QString::fromStdString(fmt::format("0x{:016X}", data(ProgramIdRole).toULongLong())),
|
QString::fromStdString(fmt::format("0x{:016X}", data(ProgramIdRole).toULongLong())),
|
||||||
data(TitleRole).toString(),
|
data(TitleRole).toString(),
|
||||||
};
|
}};
|
||||||
|
|
||||||
auto row1 = row_data.at(UISettings::values.row_1_text_id);
|
const auto& row1 = row_data.at(UISettings::values.row_1_text_id);
|
||||||
auto row2 = row_data.at(UISettings::values.row_2_text_id);
|
const auto& row2 = row_data.at(UISettings::values.row_2_text_id);
|
||||||
|
|
||||||
if (row1.isEmpty() || row1 == row2)
|
if (row1.isEmpty() || row1 == row2)
|
||||||
return row2;
|
return row2;
|
||||||
|
@ -86,9 +87,9 @@ public:
|
||||||
return row1;
|
return row1;
|
||||||
|
|
||||||
return row1 + "\n " + row2;
|
return row1 + "\n " + row2;
|
||||||
} else {
|
|
||||||
return GameListItem::data(role);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return GameListItem::data(role);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Reference in New Issue