diff options
author | louis <louis.braun@gmx.de> | 2015-03-12 17:28:35 +0100 |
---|---|---|
committer | louis <louis.braun@gmx.de> | 2015-03-12 17:28:35 +0100 |
commit | 44680b6ce80221e91cb14dca9ca7fad7015f1297 (patch) | |
tree | 8af805db50568ba41ebb461309d5724320295441 /config.c | |
parent | 45cb6c1663d66ebc22bed8dbc8cdbacdc82ad4a8 (diff) | |
download | vdr-plugin-skindesigner-0.3.0.tar.gz vdr-plugin-skindesigner-0.3.0.tar.bz2 |
version 0.3.00.3.0
Diffstat (limited to 'config.c')
-rw-r--r-- | config.c | 23 |
1 files changed, 22 insertions, 1 deletions
@@ -293,10 +293,12 @@ void cDesignerConfig::AddPluginMenus(string name, map< int, string > menus) { } void cDesignerConfig::AddPluginViews(string name, - map< int, string > views, + map< int, string > views, + multimap< int, pair <int, string> > subViews, map< int, map <int, string> > viewElements, map< int, map <int, string> > viewGrids) { pluginViews.insert(pair< string, map < int, string > >(name, views)); + pluginSubViews.insert(pair< string, multimap< int, pair <int, string> > >(name, subViews)); pluginViewElements.insert(pair< string, map< int, map <int, string> > >(name, viewElements)); pluginViewGrids.insert(pair< string, map< int, map <int, string> > >(name, viewGrids)); } @@ -327,6 +329,25 @@ map <int,string> *cDesignerConfig::GetPluginViews(string &name) { return views; } +map <int,string> cDesignerConfig::GetPluginSubViews(string name, int viewID) { + map <int,string> subViews; + + map < string, multimap< int, pair <int, string> > >::iterator hit = pluginSubViews.find(name); + if (hit == pluginSubViews.end()) + return subViews; + + multimap< int, pair<int, string> > subs = hit->second; + + pair < multimap< int, pair<int, string> >::iterator, multimap< int, pair<int, string> >::iterator> viewSubViews; + viewSubViews = subs.equal_range(viewID); + + for (multimap< int, pair<int, string> >::iterator it=viewSubViews.first; it!=viewSubViews.second; ++it) { + pair<int, string> subViewFound = it->second; + subViews.insert(pair<int,string>(subViewFound.first, subViewFound.second)); + } + return subViews; +} + int cDesignerConfig::GetPluginViewElementID(string pluginName, string viewElementName, int viewID) { map < string, map< int, map <int, string> > >::iterator hit = pluginViewElements.find(pluginName); if (hit == pluginViewElements.end()) |