diff options
author | louis <louis.braun@gmx.de> | 2015-02-12 18:56:41 +0100 |
---|---|---|
committer | louis <louis.braun@gmx.de> | 2015-02-12 18:56:41 +0100 |
commit | f3ad276385796a2a848be4b280aa9a1705226f20 (patch) | |
tree | db9b3d549afb45eadb0ae278ed87a4aaa79e74ec /libcore | |
parent | 4168dd5f299f4489b1e0029d408c62f4b44544ce (diff) | |
download | vdr-plugin-skindesigner-f3ad276385796a2a848be4b280aa9a1705226f20.tar.gz vdr-plugin-skindesigner-f3ad276385796a2a848be4b280aa9a1705226f20.tar.bz2 |
fixed header icon for plugin menus
Diffstat (limited to 'libcore')
-rw-r--r-- | libcore/imagecache.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/libcore/imagecache.c b/libcore/imagecache.c index 57e0dd4..2a9a948 100644 --- a/libcore/imagecache.c +++ b/libcore/imagecache.c @@ -206,7 +206,25 @@ string cImageCache::GetIconName(string label, eMenuCategory cat) { case mcSetupRecord: case mcSetupReplay: return "standardicons/Recordings"; - case mcPlugin: + case mcPlugin: { + //check for Plugins + for (int i = 0; ; i++) { + cPlugin *p = cPluginManager::GetPlugin(i); + if (p) { + const char *mainMenuEntry = p->MainMenuEntry(); + if (mainMenuEntry) { + string plugMainEntry = mainMenuEntry; + try { + if (label.substr(0, plugMainEntry.size()) == plugMainEntry) { + return *cString::sprintf("pluginicons/%s", p->Name()); + } + } catch (...) {} + } + } else + break; + } + return "standardicons/Plugins"; + } case mcPluginSetup: case mcSetupPlugins: return "standardicons/Plugins"; |