From 3cc8e78e1bf00e16b49520ac416b74b5fd73c906 Mon Sep 17 00:00:00 2001 From: louis Date: Thu, 12 Mar 2015 17:22:16 +0100 Subject: Version 0.0.1 --- libskindesigner/services.h | 131 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 libskindesigner/services.h (limited to 'libskindesigner/services.h') diff --git a/libskindesigner/services.h b/libskindesigner/services.h new file mode 100644 index 0000000..8fa9c69 --- /dev/null +++ b/libskindesigner/services.h @@ -0,0 +1,131 @@ +#ifndef __SKINDESIGNERSERVICES_H +#define __SKINDESIGNERSERVICES_H + +using namespace std; + +#include +#include +#include + +enum eMenuType { + mtList, + mtText +}; + +class cSDDisplayMenu : public cSkinDisplayMenu { +public: + virtual void SetTitle(const char *Title); + virtual void SetPluginMenu(string name, int menu, int type, bool init); + virtual bool SetItemPlugin(map *stringTokens, map *intTokens, map > > *loopTokens, int Index, bool Current, bool Selectable); + virtual bool SetPluginText(map *stringTokens, map *intTokens, map > > *loopTokens); +}; + +class cSkinDisplayPlugin { +public: + cSkinDisplayPlugin(void); + virtual ~cSkinDisplayPlugin(void); + virtual void Deactivate(bool hide); + virtual void Activate(void); + virtual void ClearViewElement(int id); + virtual void DisplayViewElement(int id); + virtual void SetViewElementIntTokens(map *intTokens); + virtual void SetViewElementStringTokens(map *stringTokens); + virtual void SetViewElementLoopTokens(map > > *loopTokens); + virtual void InitGrids(int viewGridID); + virtual void SetGrid(int viewGridID, long gridID, double x, double y, double width, double height, map *intTokens, map *stringTokens); + virtual void SetGridCurrent(int viewGridID, long gridID, bool current); + virtual void DeleteGrid(int viewGridID, long gridID); + virtual void DisplayGrids(int viewGridID); + virtual void ClearGrids(int viewGridID); + virtual void SetTabIntTokens(map *intTokens); + virtual void SetTabStringTokens(map *stringTokens); + virtual void SetTabLoopTokens(map > > *loopTokens); + virtual void SetTabs(void); + virtual void TabLeft(void); + virtual void TabRight(void); + virtual void TabUp(void); + virtual void TabDown(void); + virtual void DisplayTabs(void); + virtual void Flush(void); + virtual bool ChannelLogoExists(string channelId); + virtual string GetEpgImagePath(void); +}; + +/********************************************************************* +* Data Structures for Service Calls +*********************************************************************/ + +// Data structure for service "RegisterPlugin" +class RegisterPlugin { +public: + RegisterPlugin(void) { + name = ""; + }; + void SetMenu(int key, string templateName) { + menus.insert(pair(key, templateName)); + } + void SetView(int key, string templateName) { + views.insert(pair(key, templateName)); + } + void SetSubView(int view, int subView, string templateName) { + pair sub = make_pair(subView, templateName); + subViews.insert(pair >(view, sub)); + } + void SetViewElement(int view, int viewElement, string name) { + map< int, map >::iterator hit = viewElements.find(view); + if (hit == viewElements.end()) { + map vE; + vE.insert(pair(viewElement, name)); + viewElements.insert(pair >(view, vE)); + } else { + (hit->second).insert(pair(viewElement, name)); + } + } + void SetViewGrid(int view, int viewGrid, string name) { + map< int, map >::iterator hit = viewGrids.find(view); + if (hit == viewGrids.end()) { + map vG; + vG.insert(pair(viewGrid, name)); + viewGrids.insert(pair >(view, vG)); + } else { + (hit->second).insert(pair(viewGrid, name)); + } + } +// in + string name; //name of plugin + map< int, string > menus; //menus as key -> templatename hashmap + map< int, string> views; //standalone views as key -> templatename hashmap + multimap< int, pair > subViews; //subviews of standalone views as view -> (subview, templatename) multimap + map< int, map > viewElements; //viewelements as key -> (viewelement, viewelementname) hashmap + map< int, map > viewGrids; //viewgrids as key -> (viewgrid, viewgridname) hashmap +//out +}; + +// Data structure for service "GetDisplayMenu" +class GetDisplayMenu { +public: + GetDisplayMenu(void) { + displayMenu = NULL; + }; +// in +//out + cSDDisplayMenu *displayMenu; +}; + +// Data structure for service "GetDisplayPlugin" +class GetDisplayPlugin { +public: + GetDisplayPlugin(void) { + pluginName = ""; + viewID = -1; + subViewID = -1; + displayPlugin = NULL; + }; +// in + string pluginName; + int viewID; + int subViewID; +//out + cSkinDisplayPlugin *displayPlugin; +}; +#endif //__SKINDESIGNERSERVICES_H -- cgit v1.2.3