summaryrefslogtreecommitdiff
path: root/plugins/QuickMessages
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2018-05-17 20:53:02 +0300
committerGeorge Hazan <ghazan@miranda.im>2018-05-17 20:53:02 +0300
commit067a48827e8bae1bc595f3268e18996314843396 (patch)
treed51ae1287c40f08f291f5578b2dccf69f902cc97 /plugins/QuickMessages
parent7639f72273189df60566755c0d5f1e4ab7201b67 (diff)
OpenFolder, PackUpdater, PasteIt, Ping, QuickMessages, QuickReplies, Sessions, TranslitSwitcher => CMPlugin
Diffstat (limited to 'plugins/QuickMessages')
-rw-r--r--plugins/QuickMessages/src/Utils.cpp2
-rw-r--r--plugins/QuickMessages/src/main.cpp55
-rw-r--r--plugins/QuickMessages/src/options.cpp4
-rw-r--r--plugins/QuickMessages/src/stdafx.h9
4 files changed, 38 insertions, 32 deletions
diff --git a/plugins/QuickMessages/src/Utils.cpp b/plugins/QuickMessages/src/Utils.cpp
index 77a2cea691..1fa555b4c6 100644
--- a/plugins/QuickMessages/src/Utils.cpp
+++ b/plugins/QuickMessages/src/Utils.cpp
@@ -225,7 +225,7 @@ BYTE getEntryByte(int buttonnum, int entrynum, BOOL mode)
static HANDLE AddIcon(char* szIcoName)
{
wchar_t tszPath[MAX_PATH];
- GetModuleFileName(hinstance, tszPath, _countof(tszPath));
+ GetModuleFileName(g_plugin.getInst(), tszPath, _countof(tszPath));
SKINICONDESC sid = {};
sid.flags = SIDF_PATH_UNICODE;
diff --git a/plugins/QuickMessages/src/main.cpp b/plugins/QuickMessages/src/main.cpp
index cd9da5c4bc..8d6060fade 100644
--- a/plugins/QuickMessages/src/main.cpp
+++ b/plugins/QuickMessages/src/main.cpp
@@ -19,18 +19,21 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "stdafx.h"
-HINSTANCE hinstance;
int hLangpack;
+CMPlugin g_plugin;
WNDPROC mainProc;
-int g_iButtonsCount=0;
-int g_bStartup=0;
-BOOL g_bRClickAuto=0;
-BOOL g_bLClickAuto=0;
-BOOL g_bQuickMenu=0;
+int g_iButtonsCount = 0;
+int g_bStartup = 0;
+BOOL g_bRClickAuto = 0;
+BOOL g_bLClickAuto = 0;
+BOOL g_bQuickMenu = 0;
-PLUGININFOEX pluginInfo = {
+/////////////////////////////////////////////////////////////////////////////////////////
+
+PLUGININFOEX pluginInfo =
+{
sizeof(PLUGININFOEX),
__PLUGIN_NAME,
PLUGIN_MAKE_VERSION(__MAJOR_VERSION, __MINOR_VERSION, __RELEASE_NUM, __BUILD_NUM),
@@ -43,6 +46,13 @@ PLUGININFOEX pluginInfo = {
{ 0x37ed754b, 0x6cf9, 0x40ed, { 0x9e, 0xb6, 0xf, 0xef, 0x8e, 0x82, 0x24, 0x75 } }
};
+extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD)
+{
+ return &pluginInfo;
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
int PreShutdown(WPARAM, LPARAM)
{
DestructButtonsList();
@@ -101,7 +111,7 @@ static int InputMenuPopup(WPARAM, LPARAM lParam)
textlenght = cr.cpMax - cr.cpMin;
if (textlenght) {
- pszText = (wchar_t *)mir_alloc((textlenght + 10)*sizeof(wchar_t));
+ pszText = (wchar_t *)mir_alloc((textlenght + 10) * sizeof(wchar_t));
memset(pszText, 0, ((textlenght + 10) * sizeof(wchar_t)));
SendMessage(mwpd->hwnd, EM_GETSELTEXT, 0, (LPARAM)pszText);
}
@@ -160,7 +170,7 @@ static int CustomButtonPressed(WPARAM, LPARAM lParam)
UINT textlenght = cr.cpMax - cr.cpMin;
if (textlenght) {
- pszText = (wchar_t *)mir_alloc((textlenght + 10)*sizeof(wchar_t));
+ pszText = (wchar_t *)mir_alloc((textlenght + 10) * sizeof(wchar_t));
memset(pszText, 0, ((textlenght + 10) * sizeof(wchar_t)));
SendMessage(hEdit, EM_GETSELTEXT, 0, (LPARAM)pszText);
}
@@ -195,7 +205,7 @@ static int CustomButtonPressed(WPARAM, LPARAM lParam)
case 3:
if (!g_iButtonsCount)
break;
-
+
HMENU hMenu = CreatePopupMenu(), hSubMenu = nullptr;
for (int menunum = 0; menunum < sl->realCount; menunum++) {
@@ -216,8 +226,8 @@ static int CustomButtonPressed(WPARAM, LPARAM lParam)
AppendMenu((HMENU)((hSubMenu && !bSetPopupMark) ? hSubMenu : hMenu), MF_SEPARATOR, 0, nullptr);
else
AppendMenu((HMENU)((hSubMenu && !bSetPopupMark) ? hSubMenu : hMenu),
- MF_STRING | (bSetPopupMark ? MF_POPUP : 0),
- (bSetPopupMark ? (UINT_PTR)hSubMenu : (menunum + 1)), bd->pszName);
+ MF_STRING | (bSetPopupMark ? MF_POPUP : 0),
+ (bSetPopupMark ? (UINT_PTR)hSubMenu : (menunum + 1)), bd->pszName);
}
int res = TrackPopupMenu(hMenu, TPM_RETURNCMD, cbcd->pt.x, cbcd->pt.y, 0, cbcd->hwndFrom, nullptr);
@@ -267,27 +277,18 @@ static int PluginInit(WPARAM, LPARAM)
return 0;
}
-extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD)
+extern "C" __declspec(dllexport) int Load(void)
{
- return &pluginInfo;
-}
+ mir_getLP(&pluginInfo);
-extern "C" __declspec(dllexport) int Unload(void)
-{
+ HookEvent(ME_SYSTEM_MODULESLOADED, PluginInit);
+ HookEvent(ME_SYSTEM_PRESHUTDOWN, PreShutdown);
return 0;
}
-BOOL WINAPI DllMain(HINSTANCE hinst, DWORD, LPVOID)
-{
- hinstance = hinst;
- return 1;
-}
+/////////////////////////////////////////////////////////////////////////////////////////
-extern "C" __declspec(dllexport) int Load(void)
+extern "C" __declspec(dllexport) int Unload(void)
{
- mir_getLP(&pluginInfo);
-
- HookEvent(ME_SYSTEM_MODULESLOADED, PluginInit);
- HookEvent(ME_SYSTEM_PRESHUTDOWN, PreShutdown);
return 0;
}
diff --git a/plugins/QuickMessages/src/options.cpp b/plugins/QuickMessages/src/options.cpp
index a9799aa64d..22da0bf26b 100644
--- a/plugins/QuickMessages/src/options.cpp
+++ b/plugins/QuickMessages/src/options.cpp
@@ -920,7 +920,7 @@ INT_PTR CALLBACK OptionsProc(HWND hdlg, UINT msg, WPARAM wparam, LPARAM lparam)
switch (LOWORD(wparam)) {
case IDC_VARHELP:
if (!g_varhelpDlg)
- g_varhelpDlg = CreateDialog(hinstance, MAKEINTRESOURCE(IDD_HELPDIALOG), nullptr, HelpDlgProc);
+ g_varhelpDlg = CreateDialog(g_plugin.getInst(), MAKEINTRESOURCE(IDD_HELPDIALOG), nullptr, HelpDlgProc);
else
//ShowWindow(g_varhelpDlg,SW_SHOWDEFAULT);
SetWindowPos(g_varhelpDlg, nullptr, 0, 0, 0, 0, SWP_SHOWWINDOW | SWP_NOMOVE | SWP_NOSIZE);
@@ -1085,7 +1085,7 @@ int OptionsInit(WPARAM wparam, LPARAM)
{
OPTIONSDIALOGPAGE odp = { 0 };
odp.position = 940000000;
- odp.hInstance = hinstance;
+ odp.hInstance = g_plugin.getInst();
odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPTIONS);
odp.szTitle.a = LPGEN("Quick Messages");
odp.pfnDlgProc = OptionsProc;
diff --git a/plugins/QuickMessages/src/stdafx.h b/plugins/QuickMessages/src/stdafx.h
index 4672bdb74c..f41f46e448 100644
--- a/plugins/QuickMessages/src/stdafx.h
+++ b/plugins/QuickMessages/src/stdafx.h
@@ -25,7 +25,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include <commctrl.h>
#include <Richedit.h>
-#define __NO_CMPLUGIN_NEEDED
#include <newpluginapi.h>
#include <m_clist.h>
#include <m_options.h>
@@ -44,7 +43,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define PLGNAME "QuickMessages"
-extern HINSTANCE hinstance;
+struct CMPlugin : public PLUGIN<CMPlugin>
+{
+ CMPlugin() :
+ PLUGIN<CMPlugin>(PLGNAME)
+ {}
+};
+
extern HANDLE hIcolib;
extern ListData *ButtonsList[100];
extern SortedList *QuickList;