Merge pull request #1456 from Stevoisiak/AddCountries

Additional Country Filters
This commit is contained in:
Lioncash 2014-11-19 19:21:59 -05:00
commit ccebac8bcc
28 changed files with 309 additions and 152 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 920 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 612 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 399 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 918 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 401 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 638 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 462 B

View File

@ -169,9 +169,15 @@ ListGC = True
ListJap = True ListJap = True
ListPal = True ListPal = True
ListUsa = True ListUsa = True
ListAustralia = True
ListFrance = True ListFrance = True
ListGermany = True
ListInternational = True
ListItaly = True ListItaly = True
ListKorea = True ListKorea = True
ListNetherlands = True
ListRussia = True
ListSpain = True
ListTaiwan = True ListTaiwan = True
ListUnknown = True ListUnknown = True
ListSort = 3 ListSort = 3

View File

@ -274,9 +274,15 @@ void SConfig::SaveGameListSettings(IniFile& ini)
gamelist->Set("ListJap", m_ListJap); gamelist->Set("ListJap", m_ListJap);
gamelist->Set("ListPal", m_ListPal); gamelist->Set("ListPal", m_ListPal);
gamelist->Set("ListUsa", m_ListUsa); gamelist->Set("ListUsa", m_ListUsa);
gamelist->Set("ListAustralia", m_ListAustralia);
gamelist->Set("ListFrance", m_ListFrance); gamelist->Set("ListFrance", m_ListFrance);
gamelist->Set("ListGermany", m_ListGermany);
gamelist->Set("ListInternational", m_ListInternational);
gamelist->Set("ListItaly", m_ListItaly); gamelist->Set("ListItaly", m_ListItaly);
gamelist->Set("ListKorea", m_ListKorea); gamelist->Set("ListKorea", m_ListKorea);
gamelist->Set("ListNetherlands", m_ListNetherlands);
gamelist->Set("ListRussia", m_ListRussia);
gamelist->Set("ListSpain", m_ListSpain);
gamelist->Set("ListTaiwan", m_ListTaiwan); gamelist->Set("ListTaiwan", m_ListTaiwan);
gamelist->Set("ListUnknown", m_ListUnknown); gamelist->Set("ListUnknown", m_ListUnknown);
gamelist->Set("ListSort", m_ListSort); gamelist->Set("ListSort", m_ListSort);
@ -478,21 +484,27 @@ void SConfig::LoadGameListSettings(IniFile& ini)
{ {
IniFile::Section* gamelist = ini.GetOrCreateSection("GameList"); IniFile::Section* gamelist = ini.GetOrCreateSection("GameList");
gamelist->Get("ListDrives", &m_ListDrives, false); gamelist->Get("ListDrives", &m_ListDrives, false);
gamelist->Get("ListWad", &m_ListWad, true); gamelist->Get("ListWad", &m_ListWad, true);
gamelist->Get("ListWii", &m_ListWii, true); gamelist->Get("ListWii", &m_ListWii, true);
gamelist->Get("ListGC", &m_ListGC, true); gamelist->Get("ListGC", &m_ListGC, true);
gamelist->Get("ListJap", &m_ListJap, true); gamelist->Get("ListJap", &m_ListJap, true);
gamelist->Get("ListPal", &m_ListPal, true); gamelist->Get("ListPal", &m_ListPal, true);
gamelist->Get("ListUsa", &m_ListUsa, true); gamelist->Get("ListUsa", &m_ListUsa, true);
gamelist->Get("ListFrance", &m_ListFrance, true); gamelist->Get("ListAustralia", &m_ListAustralia, true);
gamelist->Get("ListItaly", &m_ListItaly, true); gamelist->Get("ListFrance", &m_ListFrance, true);
gamelist->Get("ListKorea", &m_ListKorea, true); gamelist->Get("ListGermany", &m_ListGermany, true);
gamelist->Get("ListTaiwan", &m_ListTaiwan, true); gamelist->Get("ListInternational", &m_ListInternational, true);
gamelist->Get("ListUnknown", &m_ListUnknown, true); gamelist->Get("ListItaly", &m_ListItaly, true);
gamelist->Get("ListSort", &m_ListSort, 3); gamelist->Get("ListKorea", &m_ListKorea, true);
gamelist->Get("ListSortSecondary",&m_ListSort2, 0); gamelist->Get("ListNetherlands", &m_ListNetherlands, true);
gamelist->Get("ListRussia", &m_ListRussia, true);
gamelist->Get("ListSpain", &m_ListSpain, true);
gamelist->Get("ListTaiwan", &m_ListTaiwan, true);
gamelist->Get("ListUnknown", &m_ListUnknown, true);
gamelist->Get("ListSort", &m_ListSort, 3);
gamelist->Get("ListSortSecondary", &m_ListSort2, 0);
// Determines if compressed games display in blue // Determines if compressed games display in blue
gamelist->Get("ColorCompressed", &m_ColorCompressed, true); gamelist->Get("ColorCompressed", &m_ColorCompressed, true);

View File

@ -63,9 +63,15 @@ struct SConfig : NonCopyable
bool m_ListPal; bool m_ListPal;
bool m_ListUsa; bool m_ListUsa;
bool m_ListJap; bool m_ListJap;
bool m_ListAustralia;
bool m_ListFrance; bool m_ListFrance;
bool m_ListGermany;
bool m_ListInternational;
bool m_ListItaly; bool m_ListItaly;
bool m_ListKorea; bool m_ListKorea;
bool m_ListNetherlands;
bool m_ListRussia;
bool m_ListSpain;
bool m_ListTaiwan; bool m_ListTaiwan;
bool m_ListUnknown; bool m_ListUnknown;
int m_ListSort; int m_ListSort;

View File

@ -172,12 +172,16 @@ bool SCoreStartupParameter::AutoSetup(EBootBS2 _BootBS2)
case DiscIO::IVolume::COUNTRY_AUSTRALIA: case DiscIO::IVolume::COUNTRY_AUSTRALIA:
case DiscIO::IVolume::COUNTRY_EUROPE: case DiscIO::IVolume::COUNTRY_EUROPE:
case DiscIO::IVolume::COUNTRY_FRANCE: case DiscIO::IVolume::COUNTRY_FRANCE:
case DiscIO::IVolume::COUNTRY_INTERNATIONAL:
case DiscIO::IVolume::COUNTRY_ITALY: case DiscIO::IVolume::COUNTRY_ITALY:
case DiscIO::IVolume::COUNTRY_NETHERLANDS:
case DiscIO::IVolume::COUNTRY_RUSSIA: case DiscIO::IVolume::COUNTRY_RUSSIA:
case DiscIO::IVolume::COUNTRY_SPAIN:
bNTSC = false; bNTSC = false;
Region = EUR_DIR; Region = EUR_DIR;
break; break;
case DiscIO::IVolume::COUNTRY_UNKNOWN:
default: default:
if (PanicYesNoT("Your GCM/ISO file seems to be invalid (invalid country)." if (PanicYesNoT("Your GCM/ISO file seems to be invalid (invalid country)."
"\nContinue with PAL region?")) "\nContinue with PAL region?"))
@ -250,14 +254,17 @@ bool SCoreStartupParameter::AutoSetup(EBootBS2 _BootBS2)
Region = JAP_DIR; Region = JAP_DIR;
break; break;
case DiscIO::IVolume::COUNTRY_AUSTRALIA:
case DiscIO::IVolume::COUNTRY_EUROPE: case DiscIO::IVolume::COUNTRY_EUROPE:
case DiscIO::IVolume::COUNTRY_FRANCE: case DiscIO::IVolume::COUNTRY_FRANCE:
case DiscIO::IVolume::COUNTRY_INTERNATIONAL:
case DiscIO::IVolume::COUNTRY_ITALY: case DiscIO::IVolume::COUNTRY_ITALY:
case DiscIO::IVolume::COUNTRY_RUSSIA: case DiscIO::IVolume::COUNTRY_RUSSIA:
bNTSC = false; bNTSC = false;
Region = EUR_DIR; Region = EUR_DIR;
break; break;
case DiscIO::IVolume::COUNTRY_UNKNOWN:
default: default:
bNTSC = false; bNTSC = false;
Region = EUR_DIR; Region = EUR_DIR;

View File

@ -34,20 +34,23 @@ public:
virtual bool CheckIntegrity() const { return false; } virtual bool CheckIntegrity() const { return false; }
virtual bool IsDiscTwo() const { return false; } virtual bool IsDiscTwo() const { return false; }
// Increment CACHE_REVISION if values are changed (ISOFile.cpp)
enum ECountry enum ECountry
{ {
COUNTRY_EUROPE = 0, COUNTRY_EUROPE = 0,
COUNTRY_FRANCE,
COUNTRY_RUSSIA,
COUNTRY_USA,
COUNTRY_JAPAN, COUNTRY_JAPAN,
COUNTRY_KOREA, COUNTRY_USA,
COUNTRY_ITALY,
COUNTRY_TAIWAN,
COUNTRY_SDK,
COUNTRY_UNKNOWN,
COUNTRY_GERMANY,
COUNTRY_AUSTRALIA, COUNTRY_AUSTRALIA,
COUNTRY_FRANCE,
COUNTRY_GERMANY,
COUNTRY_INTERNATIONAL,
COUNTRY_ITALY,
COUNTRY_KOREA,
COUNTRY_NETHERLANDS,
COUNTRY_RUSSIA,
COUNTRY_SPAIN,
COUNTRY_TAIWAN,
COUNTRY_UNKNOWN,
NUMBER_OF_COUNTRIES NUMBER_OF_COUNTRIES
}; };

View File

@ -15,24 +15,22 @@ IVolume::ECountry CountrySwitch(u8 CountryCode)
{ {
switch (CountryCode) switch (CountryCode)
{ {
// Region free - fall through to European defaults for now // Region free - Uses European flag as placeholder
case 'A': case 'A':
return IVolume::COUNTRY_INTERNATIONAL;
// PAL // PAL
case 'D': // German case 'D':
return IVolume::COUNTRY_GERMANY; return IVolume::COUNTRY_GERMANY;
case 'X': // Used by a couple PAL games case 'X': // Used by a couple PAL games
case 'Y': // German, french case 'Y': // German, French
case 'L': // Japanese import to PAL regions case 'L': // Japanese import to PAL regions
case 'M': // Japanese import to PAL regions case 'M': // Japanese import to PAL regions
case 'S': // Spanish-speaking regions
case 'P': case 'P':
return IVolume::COUNTRY_EUROPE; return IVolume::COUNTRY_EUROPE;
case 'U': // Australia case 'U':
return IVolume::COUNTRY_AUSTRALIA; return IVolume::COUNTRY_AUSTRALIA;
case 'F': case 'F':
@ -41,9 +39,15 @@ IVolume::ECountry CountrySwitch(u8 CountryCode)
case 'I': case 'I':
return IVolume::COUNTRY_ITALY; return IVolume::COUNTRY_ITALY;
case 'H':
return IVolume::COUNTRY_NETHERLANDS;
case 'R': case 'R':
return IVolume::COUNTRY_RUSSIA; return IVolume::COUNTRY_RUSSIA;
case 'S':
return IVolume::COUNTRY_SPAIN;
// NTSC // NTSC
case 'E': case 'E':
case 'N': // Japanese import to USA and other NTSC regions case 'N': // Japanese import to USA and other NTSC regions
@ -54,13 +58,10 @@ IVolume::ECountry CountrySwitch(u8 CountryCode)
return IVolume::COUNTRY_JAPAN; return IVolume::COUNTRY_JAPAN;
case 'K': case 'K':
case 'T': // Korea with English language
case 'Q': // Korea with Japanese language case 'Q': // Korea with Japanese language
case 'T': // Korea with English language
return IVolume::COUNTRY_KOREA; return IVolume::COUNTRY_KOREA;
case 'O':
return IVolume::COUNTRY_SDK;
case 'W': case 'W':
return IVolume::COUNTRY_TAIWAN; return IVolume::COUNTRY_TAIWAN;

View File

@ -21,15 +21,20 @@ void Resources::Init()
QString dir = QString::fromStdString(File::GetSysDirectory() + "Resources/"); QString dir = QString::fromStdString(File::GetSysDirectory() + "Resources/");
m_regions.resize(DiscIO::IVolume::NUMBER_OF_COUNTRIES); m_regions.resize(DiscIO::IVolume::NUMBER_OF_COUNTRIES);
m_regions[DiscIO::IVolume::COUNTRY_EUROPE].load(dir + SL("Flag_Europe.png"));
m_regions[DiscIO::IVolume::COUNTRY_FRANCE].load(dir + SL("Flag_France.png"));
m_regions[DiscIO::IVolume::COUNTRY_RUSSIA].load(dir + SL("Flag_Unknown.png")); // TODO
m_regions[DiscIO::IVolume::COUNTRY_USA].load(dir + SL("Flag_USA.png"));
m_regions[DiscIO::IVolume::COUNTRY_JAPAN].load(dir + SL("Flag_Japan.png")); m_regions[DiscIO::IVolume::COUNTRY_JAPAN].load(dir + SL("Flag_Japan.png"));
m_regions[DiscIO::IVolume::COUNTRY_KOREA].load(dir + SL("Flag_Korea.png")); m_regions[DiscIO::IVolume::COUNTRY_EUROPE].load(dir + SL("Flag_Europe.png"));
m_regions[DiscIO::IVolume::COUNTRY_USA].load(dir + SL("Flag_USA.png"));
m_regions[DiscIO::IVolume::COUNTRY_AUSTRALIA].load(dir + SL("Flag_Australia.png"));
m_regions[DiscIO::IVolume::COUNTRY_FRANCE].load(dir + SL("Flag_France.png"));
m_regions[DiscIO::IVolume::COUNTRY_GERMANY].load(dir + SL("Flag_Germany.png"));
m_regions[DiscIO::IVolume::COUNTRY_INTERNATIONAL].load(dir + SL("Flag_Europe.png")); // Uses European flag as a placeholder
m_regions[DiscIO::IVolume::COUNTRY_ITALY].load(dir + SL("Flag_Italy.png")); m_regions[DiscIO::IVolume::COUNTRY_ITALY].load(dir + SL("Flag_Italy.png"));
m_regions[DiscIO::IVolume::COUNTRY_KOREA].load(dir + SL("Flag_Korea.png"));
m_regions[DiscIO::IVolume::COUNTRY_NETHERLANDS].load(dir + SL("Flag_Netherlands.png"));
m_regions[DiscIO::IVolume::COUNTRY_RUSSIA].load(dir + SL("Flag_Russia.png"));
m_regions[DiscIO::IVolume::COUNTRY_SPAIN].load(dir + SL("Flag_Spain.png"));
m_regions[DiscIO::IVolume::COUNTRY_TAIWAN].load(dir + SL("Flag_Taiwan.png")); m_regions[DiscIO::IVolume::COUNTRY_TAIWAN].load(dir + SL("Flag_Taiwan.png"));
m_regions[DiscIO::IVolume::COUNTRY_SDK].load(dir + SL("Flag_SDK.png"));
m_regions[DiscIO::IVolume::COUNTRY_UNKNOWN].load(dir + SL("Flag_Unknown.png")); m_regions[DiscIO::IVolume::COUNTRY_UNKNOWN].load(dir + SL("Flag_Unknown.png"));
m_platforms.resize(3); m_platforms.resize(3);

View File

@ -836,17 +836,32 @@ void CFrame::OnGameListCtrl_ItemActivated(wxListEvent& WXUNUSED (event))
(SConfig::GetInstance().m_ListJap && (SConfig::GetInstance().m_ListJap &&
SConfig::GetInstance().m_ListUsa && SConfig::GetInstance().m_ListUsa &&
SConfig::GetInstance().m_ListPal && SConfig::GetInstance().m_ListPal &&
SConfig::GetInstance().m_ListAustralia &&
SConfig::GetInstance().m_ListFrance && SConfig::GetInstance().m_ListFrance &&
SConfig::GetInstance().m_ListGermany &&
SConfig::GetInstance().m_ListItaly && SConfig::GetInstance().m_ListItaly &&
SConfig::GetInstance().m_ListKorea && SConfig::GetInstance().m_ListKorea &&
SConfig::GetInstance().m_ListNetherlands &&
SConfig::GetInstance().m_ListRussia &&
SConfig::GetInstance().m_ListSpain &&
SConfig::GetInstance().m_ListTaiwan && SConfig::GetInstance().m_ListTaiwan &&
SConfig::GetInstance().m_ListUnknown))) SConfig::GetInstance().m_ListUnknown)))
{ {
SConfig::GetInstance().m_ListGC = SConfig::GetInstance().m_ListWii = SConfig::GetInstance().m_ListGC =
SConfig::GetInstance().m_ListWad = SConfig::GetInstance().m_ListJap = SConfig::GetInstance().m_ListWii =
SConfig::GetInstance().m_ListUsa = SConfig::GetInstance().m_ListPal = SConfig::GetInstance().m_ListWad =
SConfig::GetInstance().m_ListFrance = SConfig::GetInstance().m_ListItaly = SConfig::GetInstance().m_ListJap =
SConfig::GetInstance().m_ListKorea = SConfig::GetInstance().m_ListTaiwan = SConfig::GetInstance().m_ListUsa =
SConfig::GetInstance().m_ListPal =
SConfig::GetInstance().m_ListAustralia =
SConfig::GetInstance().m_ListFrance =
SConfig::GetInstance().m_ListGermany =
SConfig::GetInstance().m_ListItaly =
SConfig::GetInstance().m_ListKorea =
SConfig::GetInstance().m_ListNetherlands =
SConfig::GetInstance().m_ListRussia =
SConfig::GetInstance().m_ListSpain =
SConfig::GetInstance().m_ListTaiwan =
SConfig::GetInstance().m_ListUnknown = true; SConfig::GetInstance().m_ListUnknown = true;
GetMenuBar()->FindItem(IDM_LISTGC)->Check(true); GetMenuBar()->FindItem(IDM_LISTGC)->Check(true);
@ -855,9 +870,14 @@ void CFrame::OnGameListCtrl_ItemActivated(wxListEvent& WXUNUSED (event))
GetMenuBar()->FindItem(IDM_LISTJAP)->Check(true); GetMenuBar()->FindItem(IDM_LISTJAP)->Check(true);
GetMenuBar()->FindItem(IDM_LISTUSA)->Check(true); GetMenuBar()->FindItem(IDM_LISTUSA)->Check(true);
GetMenuBar()->FindItem(IDM_LISTPAL)->Check(true); GetMenuBar()->FindItem(IDM_LISTPAL)->Check(true);
GetMenuBar()->FindItem(IDM_LISTAUSTRALIA)->Check(true);
GetMenuBar()->FindItem(IDM_LISTFRANCE)->Check(true); GetMenuBar()->FindItem(IDM_LISTFRANCE)->Check(true);
GetMenuBar()->FindItem(IDM_LISTGERMANY)->Check(true);
GetMenuBar()->FindItem(IDM_LISTITALY)->Check(true); GetMenuBar()->FindItem(IDM_LISTITALY)->Check(true);
GetMenuBar()->FindItem(IDM_LISTKOREA)->Check(true); GetMenuBar()->FindItem(IDM_LISTKOREA)->Check(true);
GetMenuBar()->FindItem(IDM_LISTNETHERLANDS)->Check(true);
GetMenuBar()->FindItem(IDM_LISTRUSSIA)->Check(true);
GetMenuBar()->FindItem(IDM_LISTSPAIN)->Check(true);
GetMenuBar()->FindItem(IDM_LISTTAIWAN)->Check(true); GetMenuBar()->FindItem(IDM_LISTTAIWAN)->Check(true);
GetMenuBar()->FindItem(IDM_LIST_UNK)->Check(true); GetMenuBar()->FindItem(IDM_LIST_UNK)->Check(true);

View File

@ -328,16 +328,29 @@ wxMenuBar* CFrame::CreateMenu()
regionMenu->AppendCheckItem(IDM_LISTUSA, _("Show USA")); regionMenu->AppendCheckItem(IDM_LISTUSA, _("Show USA"));
regionMenu->Check(IDM_LISTUSA, SConfig::GetInstance().m_ListUsa); regionMenu->Check(IDM_LISTUSA, SConfig::GetInstance().m_ListUsa);
regionMenu->AppendSeparator(); regionMenu->AppendSeparator();
regionMenu->AppendCheckItem(IDM_LISTAUSTRALIA, _("Show Australia"));
regionMenu->Check(IDM_LISTAUSTRALIA, SConfig::GetInstance().m_ListAustralia);
regionMenu->AppendCheckItem(IDM_LISTFRANCE, _("Show France")); regionMenu->AppendCheckItem(IDM_LISTFRANCE, _("Show France"));
regionMenu->Check(IDM_LISTFRANCE, SConfig::GetInstance().m_ListFrance); regionMenu->Check(IDM_LISTFRANCE, SConfig::GetInstance().m_ListFrance);
regionMenu->AppendCheckItem(IDM_LISTGERMANY, _("Show Germany"));
regionMenu->Check(IDM_LISTGERMANY, SConfig::GetInstance().m_ListGermany);
regionMenu->AppendCheckItem(IDM_LISTINTERNATIONAL, _("Show International"));
regionMenu->Check(IDM_LISTINTERNATIONAL, SConfig::GetInstance().m_ListInternational);
regionMenu->AppendCheckItem(IDM_LISTITALY, _("Show Italy")); regionMenu->AppendCheckItem(IDM_LISTITALY, _("Show Italy"));
regionMenu->Check(IDM_LISTITALY, SConfig::GetInstance().m_ListItaly); regionMenu->Check(IDM_LISTITALY, SConfig::GetInstance().m_ListItaly);
regionMenu->AppendCheckItem(IDM_LISTKOREA, _("Show Korea")); regionMenu->AppendCheckItem(IDM_LISTKOREA, _("Show Korea"));
regionMenu->Check(IDM_LISTKOREA, SConfig::GetInstance().m_ListKorea); regionMenu->Check(IDM_LISTKOREA, SConfig::GetInstance().m_ListKorea);
regionMenu->AppendCheckItem(IDM_LISTNETHERLANDS, _("Show Netherlands"));
regionMenu->Check(IDM_LISTNETHERLANDS, SConfig::GetInstance().m_ListNetherlands);
regionMenu->AppendCheckItem(IDM_LISTRUSSIA, _("Show Russia"));
regionMenu->Check(IDM_LISTRUSSIA, SConfig::GetInstance().m_ListRussia);
regionMenu->AppendCheckItem(IDM_LISTSPAIN, _("Show Spain"));
regionMenu->Check(IDM_LISTSPAIN, SConfig::GetInstance().m_ListSpain);
regionMenu->AppendCheckItem(IDM_LISTTAIWAN, _("Show Taiwan")); regionMenu->AppendCheckItem(IDM_LISTTAIWAN, _("Show Taiwan"));
regionMenu->Check(IDM_LISTTAIWAN, SConfig::GetInstance().m_ListTaiwan); regionMenu->Check(IDM_LISTTAIWAN, SConfig::GetInstance().m_ListTaiwan);
regionMenu->AppendCheckItem(IDM_LIST_UNK, _("Show unknown")); regionMenu->AppendCheckItem(IDM_LIST_UNK, _("Show Unknown"));
regionMenu->Check(IDM_LIST_UNK, SConfig::GetInstance().m_ListUnknown); regionMenu->Check(IDM_LIST_UNK, SConfig::GetInstance().m_ListUnknown);
viewMenu->AppendCheckItem(IDM_LISTDRIVES, _("Show Drives")); viewMenu->AppendCheckItem(IDM_LISTDRIVES, _("Show Drives"));
viewMenu->Check(IDM_LISTDRIVES, SConfig::GetInstance().m_ListDrives); viewMenu->Check(IDM_LISTDRIVES, SConfig::GetInstance().m_ListDrives);
viewMenu->Append(IDM_PURGECACHE, _("Purge Cache")); viewMenu->Append(IDM_PURGECACHE, _("Purge Cache"));
@ -1936,15 +1949,30 @@ void CFrame::GameListChanged(wxCommandEvent& event)
case IDM_LISTUSA: case IDM_LISTUSA:
SConfig::GetInstance().m_ListUsa = event.IsChecked(); SConfig::GetInstance().m_ListUsa = event.IsChecked();
break; break;
case IDM_LISTAUSTRALIA:
SConfig::GetInstance().m_ListAustralia = event.IsChecked();
break;
case IDM_LISTFRANCE: case IDM_LISTFRANCE:
SConfig::GetInstance().m_ListFrance = event.IsChecked(); SConfig::GetInstance().m_ListFrance = event.IsChecked();
break; break;
case IDM_LISTGERMANY:
SConfig::GetInstance().m_ListGermany = event.IsChecked();
break;
case IDM_LISTITALY: case IDM_LISTITALY:
SConfig::GetInstance().m_ListItaly = event.IsChecked(); SConfig::GetInstance().m_ListItaly = event.IsChecked();
break; break;
case IDM_LISTKOREA: case IDM_LISTKOREA:
SConfig::GetInstance().m_ListKorea = event.IsChecked(); SConfig::GetInstance().m_ListKorea = event.IsChecked();
break; break;
case IDM_LISTNETHERLANDS:
SConfig::GetInstance().m_ListNetherlands = event.IsChecked();
break;
case IDM_LISTRUSSIA:
SConfig::GetInstance().m_ListRussia = event.IsChecked();
break;
case IDM_LISTSPAIN:
SConfig::GetInstance().m_ListSpain = event.IsChecked();
break;
case IDM_LISTTAIWAN: case IDM_LISTTAIWAN:
SConfig::GetInstance().m_ListTaiwan = event.IsChecked(); SConfig::GetInstance().m_ListTaiwan = event.IsChecked();
break; break;

View File

@ -72,8 +72,9 @@
#include "DolphinWX/resources/Flag_Italy.xpm" #include "DolphinWX/resources/Flag_Italy.xpm"
#include "DolphinWX/resources/Flag_Japan.xpm" #include "DolphinWX/resources/Flag_Japan.xpm"
#include "DolphinWX/resources/Flag_Korea.xpm" #include "DolphinWX/resources/Flag_Korea.xpm"
#include "DolphinWX/resources/Flag_Netherlands.xpm"
#include "DolphinWX/resources/Flag_Russia.xpm" #include "DolphinWX/resources/Flag_Russia.xpm"
#include "DolphinWX/resources/Flag_SDK.xpm" #include "DolphinWX/resources/Flag_Spain.xpm"
#include "DolphinWX/resources/Flag_Taiwan.xpm" #include "DolphinWX/resources/Flag_Taiwan.xpm"
#include "DolphinWX/resources/Flag_Unknown.xpm" #include "DolphinWX/resources/Flag_Unknown.xpm"
#include "DolphinWX/resources/Flag_USA.xpm" #include "DolphinWX/resources/Flag_USA.xpm"
@ -223,18 +224,20 @@ void CGameListCtrl::InitBitmaps()
SetImageList(m_imageListSmall, wxIMAGE_LIST_SMALL); SetImageList(m_imageListSmall, wxIMAGE_LIST_SMALL);
m_FlagImageIndex.resize(DiscIO::IVolume::NUMBER_OF_COUNTRIES); m_FlagImageIndex.resize(DiscIO::IVolume::NUMBER_OF_COUNTRIES);
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_EUROPE] = m_imageListSmall->Add(wxBitmap(Flag_Europe_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_JAPAN] = m_imageListSmall->Add(wxBitmap(Flag_Japan_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_GERMANY] = m_imageListSmall->Add(wxBitmap(Flag_Germany_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_EUROPE] = m_imageListSmall->Add(wxBitmap(Flag_Europe_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_FRANCE] = m_imageListSmall->Add(wxBitmap(Flag_France_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_USA] = m_imageListSmall->Add(wxBitmap(Flag_USA_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_USA] = m_imageListSmall->Add(wxBitmap(Flag_USA_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_AUSTRALIA] = m_imageListSmall->Add(wxBitmap(Flag_Australia_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_JAPAN] = m_imageListSmall->Add(wxBitmap(Flag_Japan_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_FRANCE] = m_imageListSmall->Add(wxBitmap(Flag_France_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_KOREA] = m_imageListSmall->Add(wxBitmap(Flag_Korea_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_GERMANY] = m_imageListSmall->Add(wxBitmap(Flag_Germany_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_ITALY] = m_imageListSmall->Add(wxBitmap(Flag_Italy_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_INTERNATIONAL] = m_imageListSmall->Add(wxBitmap(Flag_Europe_xpm)); // Uses European flag as a placeholder
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_TAIWAN] = m_imageListSmall->Add(wxBitmap(Flag_Taiwan_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_ITALY] = m_imageListSmall->Add(wxBitmap(Flag_Italy_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_RUSSIA] = m_imageListSmall->Add(wxBitmap(Flag_Russia_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_KOREA] = m_imageListSmall->Add(wxBitmap(Flag_Korea_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_AUSTRALIA] = m_imageListSmall->Add(wxBitmap(Flag_Australia_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_NETHERLANDS] = m_imageListSmall->Add(wxBitmap(Flag_Netherlands_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_SDK] = m_imageListSmall->Add(wxBitmap(Flag_SDK_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_RUSSIA] = m_imageListSmall->Add(wxBitmap(Flag_Russia_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_UNKNOWN] = m_imageListSmall->Add(wxBitmap(Flag_Unknown_xpm)); m_FlagImageIndex[DiscIO::IVolume::COUNTRY_SPAIN] = m_imageListSmall->Add(wxBitmap(Flag_Spain_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_TAIWAN] = m_imageListSmall->Add(wxBitmap(Flag_Taiwan_xpm));
m_FlagImageIndex[DiscIO::IVolume::COUNTRY_UNKNOWN] = m_imageListSmall->Add(wxBitmap(Flag_Unknown_xpm));
m_PlatformImageIndex.resize(3); m_PlatformImageIndex.resize(3);
m_PlatformImageIndex[0] = m_imageListSmall->Add(wxBitmap(Platform_Gamecube_xpm)); m_PlatformImageIndex[0] = m_imageListSmall->Add(wxBitmap(Platform_Gamecube_xpm));
@ -625,6 +628,22 @@ void CGameListCtrl::ScanForISOs()
switch(iso_file->GetCountry()) switch(iso_file->GetCountry())
{ {
case DiscIO::IVolume::COUNTRY_AUSTRALIA:
if (!SConfig::GetInstance().m_ListAustralia)
list = false;
break;
case DiscIO::IVolume::COUNTRY_GERMANY:
if (!SConfig::GetInstance().m_ListGermany)
list = false;
break;
case DiscIO::IVolume::COUNTRY_RUSSIA:
if (!SConfig::GetInstance().m_ListRussia)
list = false;
break;
case DiscIO::IVolume::COUNTRY_UNKNOWN:
if (!SConfig::GetInstance().m_ListUnknown)
list = false;
break;
case DiscIO::IVolume::COUNTRY_TAIWAN: case DiscIO::IVolume::COUNTRY_TAIWAN:
if (!SConfig::GetInstance().m_ListTaiwan) if (!SConfig::GetInstance().m_ListTaiwan)
list = false; list = false;
@ -649,6 +668,14 @@ void CGameListCtrl::ScanForISOs()
if (!SConfig::GetInstance().m_ListItaly) if (!SConfig::GetInstance().m_ListItaly)
list = false; list = false;
break; break;
case DiscIO::IVolume::COUNTRY_SPAIN:
if (!SConfig::GetInstance().m_ListSpain)
list = false;
break;
case DiscIO::IVolume::COUNTRY_NETHERLANDS:
if (!SConfig::GetInstance().m_ListNetherlands)
list = false;
break;
default: default:
if (!SConfig::GetInstance().m_ListPal) if (!SConfig::GetInstance().m_ListPal)
list = false; list = false;

View File

@ -127,9 +127,15 @@ enum
IDM_LISTJAP, IDM_LISTJAP,
IDM_LISTPAL, IDM_LISTPAL,
IDM_LISTUSA, IDM_LISTUSA,
IDM_LISTAUSTRALIA,
IDM_LISTFRANCE, IDM_LISTFRANCE,
IDM_LISTGERMANY,
IDM_LISTINTERNATIONAL,
IDM_LISTITALY, IDM_LISTITALY,
IDM_LISTKOREA, IDM_LISTKOREA,
IDM_LISTNETHERLANDS,
IDM_LISTRUSSIA,
IDM_LISTSPAIN,
IDM_LISTTAIWAN, IDM_LISTTAIWAN,
IDM_LIST_UNK, IDM_LIST_UNK,
IDM_LISTDRIVES, IDM_LISTDRIVES,

View File

@ -37,7 +37,7 @@
#include "DolphinWX/ISOFile.h" #include "DolphinWX/ISOFile.h"
#include "DolphinWX/WxUtils.h" #include "DolphinWX/WxUtils.h"
static const u32 CACHE_REVISION = 0x115; static const u32 CACHE_REVISION = 0x117;
#define DVD_BANNER_WIDTH 96 #define DVD_BANNER_WIDTH 96
#define DVD_BANNER_HEIGHT 32 #define DVD_BANNER_HEIGHT 32

View File

@ -196,18 +196,33 @@ CISOProperties::CISOProperties(const std::string fileName, wxWindow* parent, wxW
m_GameID->SetValue(StrToWxStr(OpenISO->GetUniqueID())); m_GameID->SetValue(StrToWxStr(OpenISO->GetUniqueID()));
switch (OpenISO->GetCountry()) switch (OpenISO->GetCountry())
{ {
case DiscIO::IVolume::COUNTRY_AUSTRALIA:
m_Country->SetValue(_("AUSTRALIA"));
break;
case DiscIO::IVolume::COUNTRY_EUROPE: case DiscIO::IVolume::COUNTRY_EUROPE:
m_Country->SetValue(_("EUROPE")); m_Country->SetValue(_("EUROPE"));
break; break;
case DiscIO::IVolume::COUNTRY_FRANCE: case DiscIO::IVolume::COUNTRY_FRANCE:
m_Country->SetValue(_("FRANCE")); m_Country->SetValue(_("FRANCE"));
break; break;
case DiscIO::IVolume::COUNTRY_INTERNATIONAL:
m_Country->SetValue(_("INTERNATIONAL"));
break;
case DiscIO::IVolume::COUNTRY_ITALY: case DiscIO::IVolume::COUNTRY_ITALY:
m_Country->SetValue(_("ITALY")); m_Country->SetValue(_("ITALY"));
break; break;
case DiscIO::IVolume::COUNTRY_GERMANY:
m_Country->SetValue(_("GERMANY"));
break;
case DiscIO::IVolume::COUNTRY_NETHERLANDS:
m_Country->SetValue(_("NETHERLANDS"));
break;
case DiscIO::IVolume::COUNTRY_RUSSIA: case DiscIO::IVolume::COUNTRY_RUSSIA:
m_Country->SetValue(_("RUSSIA")); m_Country->SetValue(_("RUSSIA"));
break; break;
case DiscIO::IVolume::COUNTRY_SPAIN:
m_Country->SetValue(_("SPAIN"));
break;
case DiscIO::IVolume::COUNTRY_USA: case DiscIO::IVolume::COUNTRY_USA:
m_Country->SetValue(_("USA")); m_Country->SetValue(_("USA"));
if (!IsWad) // For (non wad) NTSC Games, there's no multi lang if (!IsWad) // For (non wad) NTSC Games, there's no multi lang
@ -238,9 +253,7 @@ CISOProperties::CISOProperties(const std::string fileName, wxWindow* parent, wxW
m_Lang->Disable(); m_Lang->Disable();
} }
break; break;
case DiscIO::IVolume::COUNTRY_SDK: case DiscIO::IVolume::COUNTRY_UNKNOWN:
m_Country->SetValue(_("No Country (SDK)"));
break;
default: default:
m_Country->SetValue(_("UNKNOWN")); m_Country->SetValue(_("UNKNOWN"));
break; break;

View File

@ -0,0 +1,43 @@
/* XPM */
static const char * Flag_Netherlands_xpm[] = {
"96 32 8 1",
" c None",
". c #000000",
"+ c #AE1C28",
"@ c #C3565F",
"# c #FFFFFF",
"$ c #526EA5",
"% c #1F448A",
"& c #21468B",
" ",
" ",
" ",
" ",
"................................ ",
".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ",
".@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@. ",
".##############################. ",
".##############################. ",
".##############################. ",
".##############################. ",
".##############################. ",
".##############################. ",
".$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$. ",
".%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%. ",
".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&. ",
".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&. ",
".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&. ",
".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&. ",
".&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&. ",
"................................ ",
" ",
" ",
" ",
" ",
" ",
" "};

View File

@ -1,85 +1,65 @@
/* XPM */ /* XPM */
static const char * Flag_SDK_xpm[] = { static const char * Flag_Spain_xpm[] = {
"96 32 79 1", "96 32 59 1",
" c None", " c None",
". c #000000", ". c #000000",
"+ c #FFFFFF", "+ c #C60B1E",
"@ c #E9E9FE", "@ c #FFC400",
"# c #5959FE", "# c #E8B707",
"$ c #1515FE", "$ c #E6B709",
"% c #0505FE", "% c #FAC006",
"& c #1313FE", "& c #C08113",
"* c #3232FE", "* c #B9720D",
"= c #0000FF", "= c #B9720E",
"- c #0202FE", "- c #BF8113",
"; c #0C0CFE", "; c #FAC005",
"> c #2B2BFE", "> c #D99F03",
", c #7676FE", ", c #D69A03",
"' c #EEEEFE", "' c #C47F08",
") c #D4D4FE", ") c #A37D0A",
"! c #1C1CFE", "! c #AB7D0A",
"~ c #0303FE", "~ c #C58109",
"{ c #9292FE", "{ c #DDA102",
"] c #5151FE", "] c #E3B91B",
"^ c #B1B1FE", "^ c #DCB41F",
"/ c #F8F8FE", "/ c #A73C12",
"( c #CCCCFE", "( c #A83D11",
"_ c #E5E5FE", "_ c #B59BA2",
": c #9393FE", ": c #C5A6A9",
"< c #0A0AFE", "< c #DDB420",
"[ c #2424FE", "[ c #DFB61E",
"} c #EAEAFE", "} c #CE872D",
"| c #C2C2FE", "| c #C67C30",
"1 c #1010FE", "1 c #925318",
"2 c #0D0DFE", "2 c #854523",
"3 c #B6B6FE", "3 c #A17C89",
"4 c #0F0FFE", "4 c #C6A0B1",
"5 c #8989FE", "5 c #C77F2F",
"6 c #6767FE", "6 c #C8822E",
"7 c #ACACFE", "7 c #D59433",
"8 c #0808FE", "8 c #CD8D39",
"9 c #1E1EFE", "9 c #A64D1B",
"0 c #D2D2FE", "0 c #7C423D",
"a c #5F5FFE", "a c #7D4443",
"b c #9C9CFE", "b c #B9572A",
"c c #E8E8FE", "c c #CC8C39",
"d c #DDDDFE", "d c #D08E35",
"e c #1A1AFE", "e c #E3B72C",
"f c #9494FE", "f c #DDB632",
"g c #3636FE", "g c #A7560E",
"h c #E7E7FE", "h c #AB580D",
"i c #B7B7FE", "i c #B44C15",
"j c #0707FE", "j c #B34C13",
"k c #A4A4FE", "k c #DDB52E",
"l c #F7F7FE", "l c #DEB32E",
"m c #B0B0FE", "m c #C7AA2D",
"n c #FCFCFE", "n c #C6AD31",
"o c #C4C4FE", "o c #C4872C",
"p c #8181FE", "p c #B58955",
"q c #2020FE", "q c #B9885E",
"r c #1B1BFE", "r c #CF8932",
"s c #0101FE", "s c #C6AC2F",
"t c #0606FE", "t c #C4AA2E",
"u c #AEAEFE",
"v c #E2E2FE",
"w c #8787FE",
"x c #0404FE",
"y c #A2A2FE",
"z c #3E3EFE",
"A c #A8A8FE",
"B c #F9F9FE",
"C c #5656FE",
"D c #E6E6FE",
"E c #B4B4FE",
"F c #0909FE",
"G c #9696FE",
"H c #4D4DFE",
"I c #2222FE",
"J c #1D1DFE",
"K c #6969FE",
"L c #0E0EFE",
"M c #2D2DFE",
"N c #7575FE",
" ", " ",
" ", " ",
" ", " ",
@ -90,16 +70,16 @@ static const char * Flag_SDK_xpm[] = {
".++++++++++++++++++++++++++++++. ", ".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ", ".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ", ".++++++++++++++++++++++++++++++. ",
".+@#$%&*+++==-;>,'+++==+++)!~{+. ", ".@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@. ",
".+]=^/(]+++==+_:<[}++==++|123++. ", ".@@@@@@@@@#$@@@@@@@@@@@@@@@@@@@. ",
".+4=_++++++==+++5=6++==+7890+++. ", ".@@@@@@@%&*=-;@@@@@@@@@@@@@@@@@. ",
".+9=&abc+++==+++d=e++==f-gh++++. ", ".@@@@@@>,')!~{{@@@@@@@@@@@@@@@@. ",
".+ie===jk++==+++l=%++====m+++++. ", ".@@@@@@]^/(_:<[@@@@@@@@@@@@@@@@. ",
".++nopq=!++==+++d=r++==:stu++++. ", ".@@@@@@}|123456@@@@@@@@@@@@@@@@. ",
".+++++v=1++==+++w=6++==+kx~y+++. ", ".@@@@@@7890abcd@@@@@@@@@@@@@@@@. ",
".+zAcB7=C++==+D:<[}++==++EFsG++. ", ".@@@@@@efghijkl@@@@@@@@@@@@@@@@. ",
".+HI;%JK'++==~LMN'+++==+++|4=w+. ", ".@@@@@@mnopqrst@@@@@@@@@@@@@@@@. ",
".++++++++++++++++++++++++++++++. ", ".@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@. ",
".++++++++++++++++++++++++++++++. ", ".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ", ".++++++++++++++++++++++++++++++. ",
".++++++++++++++++++++++++++++++. ", ".++++++++++++++++++++++++++++++. ",