DolphinQt: Show WAD as "WAD" instead of "" in file format column

https://bugs.dolphin-emu.org/issues/12190
This commit is contained in:
JosJuice
2020-07-19 21:18:42 +02:00
parent 487cd7abd9
commit fe5e92f706
3 changed files with 31 additions and 12 deletions

View File

@ -336,14 +336,17 @@ void GameFile::DoState(PointerWrap& p)
m_custom_cover.DoState(p);
}
std::string GameFile::GetExtension() const
{
std::string extension;
SplitPath(m_file_path, nullptr, nullptr, &extension);
return extension;
}
bool GameFile::IsElfOrDol() const
{
if (m_file_path.size() < 4)
return false;
std::string name_end = m_file_path.substr(m_file_path.size() - 4);
std::transform(name_end.begin(), name_end.end(), name_end.begin(), ::tolower);
return name_end == ".elf" || name_end == ".dol";
const std::string extension = GetExtension();
return extension == ".elf" || extension == ".dol";
}
bool GameFile::ReadXMLMetadata(const std::string& path)
@ -592,6 +595,25 @@ bool GameFile::ShouldShowFileFormatDetails() const
}
}
std::string GameFile::GetFileFormatName() const
{
switch (m_platform)
{
case DiscIO::Platform::WiiWAD:
return "WAD";
case DiscIO::Platform::ELFOrDOL:
{
std::string extension = GetExtension();
std::transform(extension.begin(), extension.end(), extension.begin(), ::toupper);
// substr removes the dot
return extension.substr(std::min<size_t>(1, extension.size()));
}
default:
return DiscIO::GetName(m_blob_type, true);
}
}
const GameBanner& GameFile::GetBannerImage() const
{
return m_custom_banner.empty() ? m_volume_banner : m_custom_banner;