From a905c9c3f92fd54f37a5466649ac378db69e7cb0 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Wed, 28 Mar 2018 14:29:31 +0300 Subject: all protocols rewritten to CMPluginBase --- protocols/VKontakte/src/main.cpp | 47 +++++++++++++++++++++------------------- 1 file changed, 25 insertions(+), 22 deletions(-) (limited to 'protocols/VKontakte/src/main.cpp') diff --git a/protocols/VKontakte/src/main.cpp b/protocols/VKontakte/src/main.cpp index dd9687a554..1db46892eb 100644 --- a/protocols/VKontakte/src/main.cpp +++ b/protocols/VKontakte/src/main.cpp @@ -54,33 +54,12 @@ extern "C" __declspec(dllexport) const MUUID MirandaInterfaces[] = { MIID_PROTOC ///////////////////////////////////////////////////////////////////////////////////////// // OnLoad - initialize the plugin instance -static CVkProto* vkProtoInit(const char *pszProtoName, const wchar_t *wszUserName) -{ - CVkProto *ppro = new CVkProto(pszProtoName, wszUserName); - return ppro; -} - -static int vkProtoUninit(CVkProto *ppro) -{ - delete ppro; - return 0; -} - extern "C" int __declspec(dllexport) Load() { mir_getLP(&pluginInfo); pcli = Clist_GetInterface(); InitIcons(); - - // Register protocol module - PROTOCOLDESCRIPTOR pd = { 0 }; - pd.cbSize = sizeof(pd); - pd.szName = "VKontakte"; - pd.fnInit = (pfnInitProto)vkProtoInit; - pd.fnUninit = (pfnUninitProto)vkProtoUninit; - pd.type = PROTOTYPE_PROTOCOL; - Proto_RegisterModule(&pd); return 0; } @@ -90,4 +69,28 @@ extern "C" int __declspec(dllexport) Load() extern "C" int __declspec(dllexport) Unload(void) { return 0; -} \ No newline at end of file +} + +///////////////////////////////////////////////////////////////////////////////////////// + +static PROTO_INTERFACE* protoInit(const char *pszProtoName, const wchar_t *wszUserName) +{ + CVkProto *ppro = new CVkProto(pszProtoName, wszUserName); + return ppro; +} + +static int protoUninit(PROTO_INTERFACE *ppro) +{ + delete (CVkProto*)ppro; + return 0; +} + +struct CMPlugin : public CMPluginBase +{ + CMPlugin() : + CMPluginBase("VKontakte") + { + RegisterProtocol(PROTOTYPE_PROTOCOL, protoInit, protoUninit); + } +} + g_plugin; -- cgit v1.2.3