diff options
| author | shuffle2 <godisgovernment@gmail.com> | 2016-10-03 16:13:29 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-10-03 16:13:29 -0700 |
| commit | 20ebf03804de400d57ddd4337bbafd8a3cd48ae4 (patch) | |
| tree | b5daf1420eeece22bd34d9bcd75b877e5ee2d1b7 /Source/Core/DolphinWX/ISOFile.cpp | |
| parent | 46b6a32b467f51b5e38e7f9b6c2738bc914627e1 (diff) | |
| parent | 2b0f7d2669f2f4b55ca0b6a1bfe8486923142cf6 (diff) | |
Merge pull request #4279 from shuffle2/Aestek-feature/netplay-oneclick
Aestek feature/netplay oneclick
Diffstat (limited to 'Source/Core/DolphinWX/ISOFile.cpp')
| -rw-r--r-- | Source/Core/DolphinWX/ISOFile.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Source/Core/DolphinWX/ISOFile.cpp b/Source/Core/DolphinWX/ISOFile.cpp index 7173a6aeda..1b986c02c6 100644 --- a/Source/Core/DolphinWX/ISOFile.cpp +++ b/Source/Core/DolphinWX/ISOFile.cpp @@ -330,6 +330,41 @@ std::string GameListItem::GetName() const return name + ext; } +std::string GameListItem::GetUniqueIdentifier() const +{ + const DiscIO::Language lang = DiscIO::Language::LANGUAGE_ENGLISH; + std::vector<std::string> info; + if (!GetUniqueID().empty()) + info.push_back(GetUniqueID()); + if (GetRevision() != 0) + { + std::string rev_str = "Revision "; + info.push_back(rev_str + std::to_string((long long)GetRevision())); + } + + std::string name(GetName(lang)); + if (name.empty()) + name = GetName(); + + int disc_number = GetDiscNumber() + 1; + + std::string lower_name = name; + std::transform(lower_name.begin(), lower_name.end(), lower_name.begin(), ::tolower); + if (disc_number > 1 && + lower_name.find(std::string(wxString::Format("disc %i", disc_number))) == std::string::npos && + lower_name.find(std::string(wxString::Format("disc%i", disc_number))) == std::string::npos) + { + std::string disc_text = "Disc "; + info.push_back(disc_text + std::to_string(disc_number)); + } + if (info.empty()) + return name; + std::ostringstream ss; + std::copy(info.begin(), info.end() - 1, std::ostream_iterator<std::string>(ss, ", ")); + ss << info.back(); + return name + " (" + ss.str() + ")"; +} + std::vector<DiscIO::Language> GameListItem::GetLanguages() const { std::vector<DiscIO::Language> languages; |
