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 +++++++++++++++++++++------------------- protocols/VKontakte/src/stdafx.h | 1 + 2 files changed, 26 insertions(+), 22 deletions(-) (limited to 'protocols/VKontakte') 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; diff --git a/protocols/VKontakte/src/stdafx.h b/protocols/VKontakte/src/stdafx.h index 148637c0a0..5af8993529 100644 --- a/protocols/VKontakte/src/stdafx.h +++ b/protocols/VKontakte/src/stdafx.h @@ -48,6 +48,7 @@ along with this program. If not, see . #include #include #include +#include #include #include -- cgit v1.2.3