From ba979582e2d0b4961f1087b76eef659856eb23bb Mon Sep 17 00:00:00 2001 From: Jonathan Jones Date: Fri, 22 Feb 2013 15:27:28 -0500 Subject: [PATCH] Makes the "No banner" banner image theme-able. Current "sexy X" banner included as part of "Boomy" theme. Fixes issue 6023. --- Data/User/Themes/Boomy/nobanner.png | Bin 0 -> 2484 bytes Source/Core/DolphinWX/Src/ConfigMain.cpp | 1 + Source/Core/DolphinWX/Src/ISOFile.cpp | 14 ++++++--- Source/Core/DolphinWX/resources/no_banner.cpp | 28 ------------------ 4 files changed, 11 insertions(+), 32 deletions(-) create mode 100644 Data/User/Themes/Boomy/nobanner.png delete mode 100644 Source/Core/DolphinWX/resources/no_banner.cpp diff --git a/Data/User/Themes/Boomy/nobanner.png b/Data/User/Themes/Boomy/nobanner.png new file mode 100644 index 0000000000000000000000000000000000000000..4d34be77626c7f9d77659f8766109b9017baa619 GIT binary patch literal 2484 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 SoMT{MVDNPHb6Mw<&;$UL48<}4 literal 0 HcmV?d00001 diff --git a/Source/Core/DolphinWX/Src/ConfigMain.cpp b/Source/Core/DolphinWX/Src/ConfigMain.cpp index 4daf263b63..dc044afe09 100644 --- a/Source/Core/DolphinWX/Src/ConfigMain.cpp +++ b/Source/Core/DolphinWX/Src/ConfigMain.cpp @@ -620,6 +620,7 @@ void CConfigMain::CreateGUIControls() { SConfig::GetInstance().m_LocalCoreStartupParameter.theme_name = theme_selection->GetStringSelection(); main_frame->InitBitmaps(); + main_frame->UpdateGameList(); })); auto const scInterface = new wxBoxSizer(wxHORIZONTAL); diff --git a/Source/Core/DolphinWX/Src/ISOFile.cpp b/Source/Core/DolphinWX/Src/ISOFile.cpp index 1e4164b7aa..833268ad63 100644 --- a/Source/Core/DolphinWX/Src/ISOFile.cpp +++ b/Source/Core/DolphinWX/Src/ISOFile.cpp @@ -34,7 +34,7 @@ #include "FileSearch.h" #include "CompressedBlob.h" #include "ChunkFile.h" -#include "../resources/no_banner.cpp" +#include "ConfigManager.h" #define CACHE_REVISION 0x10F @@ -174,10 +174,16 @@ GameListItem::GameListItem(const std::string& _rFileName) } else { + std::string theme = SConfig::GetInstance().m_LocalCoreStartupParameter.theme_name + "/"; + std::string dir = File::GetUserPath(D_THEMES_IDX) + theme; + +#if !defined(_WIN32) + // If theme does not exist in user's dir load from shared directory + if (!File::Exists(dir)) + dir = SHARED_USER_DIR THEMES_DIR "/" + theme; +#endif // default banner - wxMemoryInputStream istream(no_banner_png, sizeof no_banner_png); - wxImage iNoBanner(istream, wxBITMAP_TYPE_PNG); - m_Image = iNoBanner; + m_Image = wxImage(dir + "nobanner.png", wxBITMAP_TYPE_PNG); } } diff --git a/Source/Core/DolphinWX/resources/no_banner.cpp b/Source/Core/DolphinWX/resources/no_banner.cpp deleted file mode 100644 index df8d51d737..0000000000 --- a/Source/Core/DolphinWX/resources/no_banner.cpp +++ /dev/null @@ -1,28 +0,0 @@ -static const unsigned char no_banner_png[] = { - 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, - 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x20, 0x04, 0x03, - 0x00, 0x00, 0x00, 0x1f, 0xee, 0x60, 0x67, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, - 0x59, 0x73, 0x00, 0x00, 0x0b, 0x13, 0x00, 0x00, 0x0b, 0x13, 0x01, 0x00, 0x9a, - 0x9c, 0x18, 0x00, 0x00, 0x00, 0x07, 0x74, 0x49, 0x4d, 0x45, 0x07, 0xdd, 0x02, - 0x09, 0x16, 0x39, 0x17, 0xf0, 0x40, 0x6e, 0x04, 0x00, 0x00, 0x00, 0x15, 0x50, - 0x4c, 0x54, 0x45, 0x66, 0x66, 0x66, 0x6a, 0x6a, 0x6a, 0x6b, 0x6b, 0x6b, 0x6d, - 0x6d, 0x6d, 0x70, 0x70, 0x70, 0x73, 0x73, 0x73, 0x80, 0x80, 0x80, 0xd1, 0x7d, - 0x40, 0x35, 0x00, 0x00, 0x00, 0xc6, 0x49, 0x44, 0x41, 0x54, 0x38, 0xcb, 0x8d, - 0xd4, 0x31, 0x0e, 0xc3, 0x20, 0x10, 0x44, 0xd1, 0x51, 0x64, 0xfa, 0x1c, 0x25, - 0x47, 0x48, 0x45, 0xed, 0xca, 0x07, 0xb0, 0x80, 0xfb, 0x1f, 0x21, 0x05, 0x60, - 0xd6, 0x30, 0xe3, 0xac, 0xbb, 0x95, 0xf8, 0x7a, 0xb2, 0x01, 0xa3, 0x98, 0x27, - 0x01, 0x00, 0x10, 0xfa, 0x9c, 0xeb, 0xbc, 0xd9, 0x35, 0xb0, 0x43, 0xf9, 0xd6, - 0x15, 0x47, 0x1b, 0xf7, 0x3a, 0x46, 0x1d, 0xdc, 0x09, 0x06, 0x4c, 0xc1, 0x9d, - 0x60, 0xc0, 0x1c, 0x58, 0x82, 0x02, 0x73, 0x60, 0x09, 0x0a, 0x2c, 0xc1, 0x20, - 0x38, 0xb0, 0x04, 0x83, 0xe0, 0xc0, 0x1a, 0x74, 0x42, 0x00, 0x6b, 0xd0, 0x89, - 0x0f, 0x07, 0x48, 0xd0, 0x08, 0x01, 0x90, 0xa0, 0x13, 0x1c, 0x60, 0x41, 0x7a, - 0x02, 0x58, 0x60, 0x88, 0xe8, 0x0b, 0xd2, 0x03, 0x40, 0x83, 0x8b, 0x88, 0xde, - 0xe0, 0xac, 0xeb, 0x5f, 0xc5, 0x1b, 0xb4, 0x4d, 0xbe, 0xee, 0xc5, 0xbf, 0x20, - 0xf7, 0x77, 0x08, 0xce, 0x60, 0xbf, 0xbe, 0xd2, 0xe1, 0x0a, 0xf2, 0xd8, 0x87, - 0xe0, 0x0a, 0x76, 0xb3, 0xd3, 0x87, 0x23, 0xc8, 0xf6, 0x2c, 0x05, 0x47, 0xd0, - 0x80, 0xb7, 0x20, 0x20, 0x80, 0x2d, 0x09, 0x02, 0x02, 0x88, 0xf3, 0x3f, 0x4a, - 0x05, 0xe3, 0xa2, 0x09, 0x02, 0x0a, 0x28, 0x82, 0x80, 0x02, 0x14, 0x01, 0x09, - 0x08, 0x02, 0x12, 0x10, 0x04, 0x34, 0xc0, 0x89, 0x1f, 0xe2, 0x9a, 0xca, 0x1c, - 0x5f, 0x12, 0x62, 0x57, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, - 0x42, 0x60, 0x82 -};