fixed {hasicon} Token in displaymenu header

This commit is contained in:
louis 2014-11-15 15:49:48 +01:00
parent 182a6df2a9
commit c53e9e3a05
5 changed files with 15 additions and 2 deletions

View File

@ -83,3 +83,4 @@ Version 0.0.5
- added {channelnumber} and {channelname} Tokens in displaymenudetailepg - added {channelnumber} and {channelname} Tokens in displaymenudetailepg
detailheader detailheader
- fixed {hasicon} Token in displaymenu header

View File

@ -267,6 +267,17 @@ string cImageCache::GetIconName(string label, eMenuCategory cat) {
return *cString::sprintf("customicons/%s", label.c_str()); return *cString::sprintf("customicons/%s", label.c_str());
} }
bool cImageCache::MenuIconExists(string name) {
cString iconFullPath = cString::sprintf("%smenuicons/", iconPath.c_str());
if (FileExists(*iconFullPath, name, "svg")) {
return true;
}
if (FileExists(*iconFullPath, name, "png")) {
return true;
}
return false;
}
void cImageCache::CacheSkinpart(string name, int width, int height) { void cImageCache::CacheSkinpart(string name, int width, int height) {
if (width < 1 || width > 1920 || height < 1 || height > 1080) if (width < 1 || width > 1920 || height < 1 || height > 1080)
return; return;

View File

@ -26,6 +26,7 @@ public:
void CacheIcon(eImageType type, string path, int width, int height); void CacheIcon(eImageType type, string path, int width, int height);
cImage *GetIcon(eImageType type, string name, int width, int height); cImage *GetIcon(eImageType type, string name, int width, int height);
string GetIconName(string label, eMenuCategory cat = mcUndefined); string GetIconName(string label, eMenuCategory cat = mcUndefined);
bool MenuIconExists(string name);
//skinparts //skinparts
void CacheSkinpart(string path, int width, int height); void CacheSkinpart(string path, int width, int height);
cImage *GetSkinpart(string name, int width, int height); cImage *GetSkinpart(string name, int width, int height);

View File

@ -458,7 +458,7 @@ void cDisplayMenuRootView::DrawHeader(void) {
bool hasIcon = false; bool hasIcon = false;
string icon = imgCache->GetIconName(menuTitle, cat); string icon = imgCache->GetIconName(menuTitle, cat);
if (icon.size() > 0) if (imgCache->MenuIconExists(icon))
hasIcon = true; hasIcon = true;
stringTokens.insert(pair<string,string>("icon", icon)); stringTokens.insert(pair<string,string>("icon", icon));

View File

@ -42,7 +42,7 @@ bool cDisplayMenuView::DrawHeader(void) {
//check for standard menu entries //check for standard menu entries
bool hasIcon = false; bool hasIcon = false;
string icon = imgCache->GetIconName(menuTitle, cat); string icon = imgCache->GetIconName(menuTitle, cat);
if (icon.size() > 0) if (imgCache->MenuIconExists(icon))
hasIcon = true; hasIcon = true;
stringTokens.insert(pair<string,string>("icon", icon)); stringTokens.insert(pair<string,string>("icon", icon));
intTokens.insert(pair<string,int>("hasicon", hasIcon)); intTokens.insert(pair<string,int>("hasicon", hasIcon));