#ifndef __LIBSKINDESIGNERAPI_SERVICES_H #define __LIBSKINDESIGNERAPI_SERVICES_H using namespace std; #include #include #include #include namespace skindesignerapi { class ISDDisplayMenu : public cSkinDisplayMenu { public: virtual void SetPluginMenu(string name, int menu, int type, bool init) = 0; virtual bool SetItemPlugin(map *stringTokens, map *intTokens, map > > *loopTokens, int Index, bool Current, bool Selectable) = 0; virtual bool SetPluginText(map *stringTokens, map *intTokens, map > > *loopTokens) = 0; }; class SkindesignerAPI { private: static SkindesignerAPI* skindesigner; protected: SkindesignerAPI(void); virtual ~SkindesignerAPI(void); virtual bool OnRegisterPlugin(string name, map< int, string > menus) = 0; virtual ISDDisplayMenu* OnGetDisplayMenu() = 0; public: static bool CallRegisterPlugin(string name, map< int, string > menus); static ISDDisplayMenu* CallGetDisplayMenu(); }; } #endif //__LIBSKINDESIGNERAPI_SERVICES_H