diff options
| author | kostamarino@hotmail.com <kostamarino@hotmail.com> | 2011-12-16 21:01:10 +0200 |
|---|---|---|
| committer | kostamarino@hotmail.com <kostamarino@hotmail.com> | 2011-12-16 21:01:10 +0200 |
| commit | a58c46be814398fa44bdbe92453d547f0becced4 (patch) | |
| tree | d23a956ccad2a60bf077c930dca324bd19d74e19 /Source/Core | |
| parent | d2f61fa1556ca0867a7d58b72bba63f8e7531180 (diff) | |
Gui change and an update to the gameini database.
The "Notes" column is gone and in it's place an "Emulation Notes" column is placed (it contains the emulationissues lines from the game inis). Notes that contain useful info about the game can be seen with just a glance this way.
Fixes issue 5043.
Diffstat (limited to 'Source/Core')
| -rw-r--r-- | Source/Core/DolphinWX/Src/GameListCtrl.cpp | 47 | ||||
| -rw-r--r-- | Source/Core/DolphinWX/Src/GameListCtrl.h | 2 |
2 files changed, 17 insertions, 32 deletions
diff --git a/Source/Core/DolphinWX/Src/GameListCtrl.cpp b/Source/Core/DolphinWX/Src/GameListCtrl.cpp index 05f8c8365a..e8e6ce75a4 100644 --- a/Source/Core/DolphinWX/Src/GameListCtrl.cpp +++ b/Source/Core/DolphinWX/Src/GameListCtrl.cpp @@ -91,16 +91,6 @@ static int CompareGameListItems(const GameListItem* iso1, const GameListItem* is case CGameListCtrl::COLUMN_TITLE: return strcasecmp(iso1->GetName(indexOne).c_str(), iso2->GetName(indexOther).c_str()) * t; - case CGameListCtrl::COLUMN_NOTES: - { - std::string cmp1 = - (iso1->GetPlatform() == GameListItem::GAMECUBE_DISC) ? - iso1->GetCompany() : iso1->GetDescription(indexOne); - std::string cmp2 = - (iso2->GetPlatform() == GameListItem::GAMECUBE_DISC) ? - iso2->GetCompany() : iso2->GetDescription(indexOther); - return strcasecmp(cmp1.c_str(), cmp2.c_str()) * t; - } case CGameListCtrl::COLUMN_COUNTRY: if(iso1->GetCountry() > iso2->GetCountry()) return 1 * t; @@ -133,7 +123,10 @@ static int CompareGameListItems(const GameListItem* iso1, const GameListItem* is else return 0; } - break; + case CGameListCtrl::COLUMN_EMULATION_NOTES: + return strcasecmp(iso1->GetIssues().c_str(), + iso2->GetIssues().c_str()) * t; + break; } return 0; @@ -294,19 +287,20 @@ void CGameListCtrl::Update() // Instead of showing the notes + the company, which is unknown with // wii titles We show in the same column : company for GC games and // description for wii/wad games - InsertColumn(COLUMN_NOTES, _("Notes")); + InsertColumn(COLUMN_EMULATION_NOTES, _("Emulation Notes")); InsertColumn(COLUMN_COUNTRY, _T("")); InsertColumn(COLUMN_SIZE, _("Size")); InsertColumn(COLUMN_EMULATION_STATE, _("State")); - + // set initial sizes for columns SetColumnWidth(COLUMN_PLATFORM, 35); SetColumnWidth(COLUMN_BANNER, 96); SetColumnWidth(COLUMN_TITLE, 200); - SetColumnWidth(COLUMN_NOTES, 200); + SetColumnWidth(COLUMN_EMULATION_NOTES, 200); SetColumnWidth(COLUMN_COUNTRY, 32); SetColumnWidth(COLUMN_EMULATION_STATE, 50); + // add all items for (int i = 0; i < (int)m_ISOFiles.size(); i++) @@ -483,18 +477,12 @@ void CGameListCtrl::InsertItemInReportView(long _Index) wxString name = wxString(rISOFile.GetName(0).c_str(), SJISConv); m_gameList.append(StringFromFormat("%s (J)\n", (const char *)name.c_str())); SetItem(_Index, COLUMN_TITLE, name, -1); - SetItem(_Index, COLUMN_NOTES, wxString(company.size() ? - company.c_str() : rISOFile.GetDescription(0).c_str(), - SJISConv), -1); } break; case DiscIO::IVolume::COUNTRY_USA: m_gameList.append(StringFromFormat("%s (U)\n", rISOFile.GetName(0).c_str())); SetItem(_Index, COLUMN_TITLE, wxString::From8BitData(rISOFile.GetName(0).c_str()), -1); - SetItem(_Index, COLUMN_NOTES, - wxString::From8BitData(company.size() ? - company.c_str() : rISOFile.GetDescription(0).c_str()), -1); break; default: m_gameList.append(StringFromFormat("%s (E)\n", @@ -503,11 +491,6 @@ void CGameListCtrl::InsertItemInReportView(long _Index) wxString::From8BitData( rISOFile.GetName(SConfig::GetInstance().m_LocalCoreStartupParameter.SelectedLanguage).c_str()), -1); - SetItem(_Index, COLUMN_NOTES, - wxString::From8BitData(company.size() ? - company.c_str() : - rISOFile.GetDescription(SConfig::GetInstance().m_LocalCoreStartupParameter.SelectedLanguage).c_str()), - -1); break; } } @@ -516,8 +499,6 @@ void CGameListCtrl::InsertItemInReportView(long _Index) m_gameList.append(StringFromFormat("%s (WAD)\n", rISOFile.GetName(0).c_str())); SetItem(_Index, COLUMN_TITLE, wxString(rISOFile.GetName(0).c_str(), SJISConv), -1); - SetItem(_Index, COLUMN_NOTES, - wxString(rISOFile.GetDescription(0).c_str(), SJISConv), -1); } #ifndef _WIN32 @@ -531,6 +512,10 @@ void CGameListCtrl::InsertItemInReportView(long _Index) // File size SetItem(_Index, COLUMN_SIZE, NiceSizeFormat(rISOFile.GetFileSize()), -1); + // Emulation notes + SetItem(_Index, COLUMN_EMULATION_NOTES, wxString::From8BitData(rISOFile.GetIssues().c_str()), -1); + SetColumnWidth(COLUMN_SIZE, wxLIST_AUTOSIZE); + // Background color SetBackgroundColor(); @@ -713,7 +698,7 @@ void CGameListCtrl::ScanForISOs() void CGameListCtrl::OnColBeginDrag(wxListEvent& event) { - if (event.GetColumn() != COLUMN_TITLE && event.GetColumn() != COLUMN_NOTES) + if (event.GetColumn() != COLUMN_TITLE && event.GetColumn() != COLUMN_EMULATION_NOTES) event.Veto(); } @@ -1331,13 +1316,13 @@ void CGameListCtrl::AutomaticColumnWidth() // We hide the Notes column if the window is too small if (resizable > 400) { - SetColumnWidth(COLUMN_TITLE, resizable / 2); - SetColumnWidth(COLUMN_NOTES, resizable / 2); + SetColumnWidth(COLUMN_TITLE, resizable / 2 ); + SetColumnWidth(COLUMN_EMULATION_NOTES, resizable / 2 ); } else { SetColumnWidth(COLUMN_TITLE, resizable); - SetColumnWidth(COLUMN_NOTES, 0); + SetColumnWidth(COLUMN_EMULATION_NOTES, 0); } } } diff --git a/Source/Core/DolphinWX/Src/GameListCtrl.h b/Source/Core/DolphinWX/Src/GameListCtrl.h index 8fca14f632..48b1a118c4 100644 --- a/Source/Core/DolphinWX/Src/GameListCtrl.h +++ b/Source/Core/DolphinWX/Src/GameListCtrl.h @@ -60,7 +60,7 @@ public: COLUMN_PLATFORM = 0, COLUMN_BANNER, COLUMN_TITLE, - COLUMN_NOTES, + COLUMN_EMULATION_NOTES, COLUMN_COUNTRY, COLUMN_SIZE, COLUMN_EMULATION_STATE, |
