From 3dbd6f1f7a43d972e4acf58c83b9c848f0da1390 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Thu, 21 Mar 2013 13:26:35 +0000 Subject: MsgPopup adopted git-svn-id: http://svn.miranda-ng.org/main/trunk@4143 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/MsgPopup/MsgPopup_10.vcxproj | 204 +++++++++++++++++++++++++++ plugins/MsgPopup/MsgPopup_10.vcxproj.filters | 50 +++++++ plugins/MsgPopup/MsgPopup_11.vcxproj | 21 ++- plugins/MsgPopup/MsgPopup_11.vcxproj.filters | 9 ++ plugins/MsgPopup/res/MsgPopup.rc | 53 +++---- plugins/MsgPopup/res/Version.rc | 38 +++++ plugins/MsgPopup/src/Version.h | 14 ++ plugins/MsgPopup/src/common.h | 15 +- plugins/MsgPopup/src/main.cpp | 63 +++++---- plugins/MsgPopup/src/options.cpp | 18 +-- plugins/MsgPopup/src/resource.h | 27 +--- plugins/MsgPopup/src/stdafx.cpp | 18 +++ 12 files changed, 424 insertions(+), 106 deletions(-) create mode 100644 plugins/MsgPopup/MsgPopup_10.vcxproj create mode 100644 plugins/MsgPopup/MsgPopup_10.vcxproj.filters create mode 100644 plugins/MsgPopup/res/Version.rc create mode 100644 plugins/MsgPopup/src/Version.h create mode 100644 plugins/MsgPopup/src/stdafx.cpp (limited to 'plugins/MsgPopup') diff --git a/plugins/MsgPopup/MsgPopup_10.vcxproj b/plugins/MsgPopup/MsgPopup_10.vcxproj new file mode 100644 index 0000000000..f3632ca82c --- /dev/null +++ b/plugins/MsgPopup/MsgPopup_10.vcxproj @@ -0,0 +1,204 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {1E702CF1-E52F-49F8-915A-FCBBCE554774} + MsgPopup + + + + DynamicLibrary + Unicode + true + + + DynamicLibrary + Unicode + true + + + DynamicLibrary + Unicode + + + DynamicLibrary + Unicode + + + + + + + + + + + + + + + + + + <_ProjectFileVersion>10.0.40219.1 + $(SolutionDir)$(Configuration)\Plugins\ + $(SolutionDir)$(Configuration)64\Plugins\ + $(SolutionDir)$(Configuration)\Obj\$(ProjectName)\ + $(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\ + $(SolutionDir)$(Configuration)\Plugins\ + $(SolutionDir)$(Configuration)64\Plugins\ + $(SolutionDir)$(Configuration)\Obj\$(ProjectName)\ + $(SolutionDir)$(Configuration)64\Obj\$(ProjectName)\ + true + + + + MultiThreadedDebugDLL + false + Disabled + Level3 + true + EditAndContinue + WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + EnableFastChecks + ..\..\include;%(AdditionalIncludeDirectories) + Use + common.h + + + _DEBUG;%(PreprocessorDefinitions) + ..\..\include\msapi + + + true + true + Windows + $(IntDir)$(TargetName).lib + $(ProfileDir)..\..\bin10\lib + false + dbghelp.lib;%(AdditionalDependencies) + + + + + MultiThreadedDebugDLL + false + Disabled + Level3 + ProgramDatabase + WIN64;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + EnableFastChecks + ..\..\include;%(AdditionalIncludeDirectories) + Use + common.h + + + _DEBUG;%(PreprocessorDefinitions) + ..\..\include\msapi + + + true + true + Windows + $(IntDir)$(TargetName).lib + $(ProfileDir)..\..\bin10\lib + false + dbghelp.lib;%(AdditionalDependencies) + + + + + true + true + Full + Level3 + WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + ..\..\include;%(AdditionalIncludeDirectories) + Size + Use + common.h + + + NDEBUG;%(PreprocessorDefinitions) + ..\..\include\msapi + + + true + Windows + $(IntDir)$(TargetName).lib + $(ProfileDir)..\..\bin10\lib + false + true + true + true + /PDBALTPATH:%_PDB% %(AdditionalOptions) + dbghelp.lib;%(AdditionalDependencies) + + + + + true + true + Full + Level3 + WIN64;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + ..\..\include;%(AdditionalIncludeDirectories) + Size + Use + common.h + + + NDEBUG;%(PreprocessorDefinitions) + ..\..\include\msapi + + + true + Windows + $(IntDir)$(TargetName).lib + $(ProfileDir)..\..\bin10\lib + false + true + true + true + /PDBALTPATH:%_PDB% %(AdditionalOptions) + dbghelp.lib;%(AdditionalDependencies) + + + + + + + + + + + + + Create + + + + + + + + + + \ No newline at end of file diff --git a/plugins/MsgPopup/MsgPopup_10.vcxproj.filters b/plugins/MsgPopup/MsgPopup_10.vcxproj.filters new file mode 100644 index 0000000000..4ea916aa95 --- /dev/null +++ b/plugins/MsgPopup/MsgPopup_10.vcxproj.filters @@ -0,0 +1,50 @@ + + + + + {f483e746-3653-4929-887e-f79771cb81d9} + cpp;c;cxx;rc;def;r;odl;idl;hpj;bat + + + {c09436c7-f2f3-4466-8985-3b1de6be34e0} + h;hpp;hxx;hm;inl + + + {dfa4551f-3ded-444a-8b03-f2a42739761e} + ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + + + Resource Files + + + Resource Files + + + \ No newline at end of file diff --git a/plugins/MsgPopup/MsgPopup_11.vcxproj b/plugins/MsgPopup/MsgPopup_11.vcxproj index dba3b5d928..f506c45cf0 100644 --- a/plugins/MsgPopup/MsgPopup_11.vcxproj +++ b/plugins/MsgPopup/MsgPopup_11.vcxproj @@ -26,24 +26,24 @@ DynamicLibrary v110_xp - MultiByte + Unicode true DynamicLibrary v110_xp - MultiByte + Unicode true DynamicLibrary v110_xp - MultiByte + Unicode DynamicLibrary v110_xp - MultiByte + Unicode @@ -83,6 +83,8 @@ WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) EnableFastChecks ..\..\include;%(AdditionalIncludeDirectories) + Use + common.h _DEBUG;%(PreprocessorDefinitions) @@ -108,6 +110,8 @@ WIN64;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) EnableFastChecks ..\..\include;%(AdditionalIncludeDirectories) + Use + common.h _DEBUG;%(PreprocessorDefinitions) @@ -132,6 +136,8 @@ WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) ..\..\include;%(AdditionalIncludeDirectories) Size + Use + common.h NDEBUG;%(PreprocessorDefinitions) @@ -159,6 +165,8 @@ WIN64;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) ..\..\include;%(AdditionalIncludeDirectories) Size + Use + common.h NDEBUG;%(PreprocessorDefinitions) @@ -181,13 +189,18 @@ + + + Create + + diff --git a/plugins/MsgPopup/MsgPopup_11.vcxproj.filters b/plugins/MsgPopup/MsgPopup_11.vcxproj.filters index 20252c4830..4ea916aa95 100644 --- a/plugins/MsgPopup/MsgPopup_11.vcxproj.filters +++ b/plugins/MsgPopup/MsgPopup_11.vcxproj.filters @@ -24,6 +24,9 @@ Header Files + + Header Files + @@ -32,10 +35,16 @@ Source Files + + Source Files + Resource Files + + Resource Files + \ No newline at end of file diff --git a/plugins/MsgPopup/res/MsgPopup.rc b/plugins/MsgPopup/res/MsgPopup.rc index 5b45a81bd2..1487857a3c 100644 --- a/plugins/MsgPopup/res/MsgPopup.rc +++ b/plugins/MsgPopup/res/MsgPopup.rc @@ -1,24 +1,23 @@ -//Microsoft Developer Studio generated resource script. +// Microsoft Visual C++ generated resource script. // +#include "..\src\resource.h" + #define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // -#include "..\src\resource.h" #include "afxres.h" ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// -// Russian resources +// Russian (Russia) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS) -#ifdef _WIN32 LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT #pragma code_page(1251) -#endif //_WIN32 ///////////////////////////////////////////////////////////////////////////// // @@ -26,51 +25,41 @@ LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT // IDD_OPTIONS DIALOGEX 0, 0, 295, 181 -STYLE DS_FIXEDSYS | WS_CHILD | WS_VISIBLE +STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_VISIBLE EXSTYLE WS_EX_CONTROLPARENT -FONT 8, "MS Shell Dlg" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 BEGIN - CONTROL "",IDC_ASTERISK_FG,"ColourPicker",WS_GROUP | WS_TABSTOP, - 56,16,39,12,WS_EX_NOPARENTNOTIFY + CONTROL "",IDC_ASTERISK_FG,"ColourPicker",WS_GROUP | WS_TABSTOP,56,16,39,12,WS_EX_NOPARENTNOTIFY GROUPBOX "ASTERISK style",IDC_STATIC,0,1,295,37 LTEXT "Background",IDC_STATIC,113,18,40,8 LTEXT "Foreground",IDC_STATIC,8,18,37,8 - CONTROL "",IDC_ASTERISK_BG,"ColourPicker",WS_GROUP | WS_TABSTOP, - 161,16,39,12,WS_EX_NOPARENTNOTIFY - CONTROL "",IDC_ERROR_FG,"ColourPicker",WS_GROUP | WS_TABSTOP,56, - 56,39,12,WS_EX_NOPARENTNOTIFY + CONTROL "",IDC_ASTERISK_BG,"ColourPicker",WS_GROUP | WS_TABSTOP,161,16,39,12,WS_EX_NOPARENTNOTIFY + CONTROL "",IDC_ERROR_FG,"ColourPicker",WS_GROUP | WS_TABSTOP,56,56,39,12,WS_EX_NOPARENTNOTIFY GROUPBOX "ERROR style",IDC_STATIC,0,41,295,37 LTEXT "Background",IDC_STATIC,113,58,40,8 LTEXT "Foreground",IDC_STATIC,8,58,37,8 - CONTROL "",IDC_ERROR_BG,"ColourPicker",WS_GROUP | WS_TABSTOP,161, - 56,39,12,WS_EX_NOPARENTNOTIFY - CONTROL "",IDC_EXCLAMATION_FG,"ColourPicker",WS_GROUP | - WS_TABSTOP,56,96,39,12,WS_EX_NOPARENTNOTIFY + CONTROL "",IDC_ERROR_BG,"ColourPicker",WS_GROUP | WS_TABSTOP,161,56,39,12,WS_EX_NOPARENTNOTIFY + CONTROL "",IDC_EXCLAMATION_FG,"ColourPicker",WS_GROUP | WS_TABSTOP,56,96,39,12,WS_EX_NOPARENTNOTIFY GROUPBOX "EXCLAMATION style",IDC_STATIC,0,81,295,37 LTEXT "Background",IDC_STATIC,113,98,40,8 LTEXT "Foreground",IDC_STATIC,8,98,37,8 - CONTROL "",IDC_EXCLAMATION_BG,"ColourPicker",WS_GROUP | - WS_TABSTOP,161,96,39,12,WS_EX_NOPARENTNOTIFY - CONTROL "",IDC_QUESTION_FG,"ColourPicker",WS_GROUP | WS_TABSTOP, - 56,136,39,12,WS_EX_NOPARENTNOTIFY + CONTROL "",IDC_EXCLAMATION_BG,"ColourPicker",WS_GROUP | WS_TABSTOP,161,96,39,12,WS_EX_NOPARENTNOTIFY + CONTROL "",IDC_QUESTION_FG,"ColourPicker",WS_GROUP | WS_TABSTOP,56,136,39,12,WS_EX_NOPARENTNOTIFY GROUPBOX "QUESTION style",IDC_STATIC,0,121,295,37 LTEXT "Background",IDC_STATIC,113,138,40,8 LTEXT "Foreground",IDC_STATIC,8,138,37,8 - CONTROL "",IDC_QUESTION_BG,"ColourPicker",WS_GROUP | WS_TABSTOP, - 161,136,39,12,WS_EX_NOPARENTNOTIFY + CONTROL "",IDC_QUESTION_BG,"ColourPicker",WS_GROUP | WS_TABSTOP,161,136,39,12,WS_EX_NOPARENTNOTIFY PUSHBUTTON "Preview",IDC_PREVIEW,234,162,50,14 LTEXT "Timeout",IDC_STATIC,213,18,26,8 EDITTEXT IDC_TIMEOUT1,245,15,40,14,ES_AUTOHSCROLL - LTEXT "Special values of the ""Timeout"":\n -1 - infinity, 0 - use default timeout value", - IDC_STATIC,17,160,137,18 + LTEXT "Special values of the ""Timeout"":\n -1 - infinity, 0 - use default timeout value",IDC_STATIC,17,160,137,18 LTEXT "Timeout",IDC_STATIC,213,58,26,8 EDITTEXT IDC_TIMEOUT2,245,55,40,14,ES_AUTOHSCROLL LTEXT "Timeout",IDC_STATIC,213,98,26,8 EDITTEXT IDC_TIMEOUT3,245,95,40,14,ES_AUTOHSCROLL LTEXT "Timeout",IDC_STATIC,213,138,26,8 EDITTEXT IDC_TIMEOUT4,245,135,40,14,ES_AUTOHSCROLL - CONTROL "Emit a sound",IDC_MESSAGEBEEP,"Button",BS_AUTOCHECKBOX | - WS_TABSTOP,167,164,57,10 + CONTROL "Emit a sound",IDC_MESSAGEBEEP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,167,164,57,10 END @@ -80,18 +69,18 @@ END // TEXTINCLUDE // -1 TEXTINCLUDE DISCARDABLE +1 TEXTINCLUDE BEGIN "..\\src\\resource.h\0" END -2 TEXTINCLUDE DISCARDABLE +2 TEXTINCLUDE BEGIN "#include ""afxres.h""\r\n" "\0" END -3 TEXTINCLUDE DISCARDABLE +3 TEXTINCLUDE BEGIN "\r\n" "\0" @@ -106,7 +95,7 @@ END // #ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO DISCARDABLE +GUIDELINES DESIGNINFO BEGIN IDD_OPTIONS, DIALOG BEGIN @@ -116,7 +105,7 @@ BEGIN END #endif // APSTUDIO_INVOKED -#endif // Russian resources +#endif // Russian (Russia) resources ///////////////////////////////////////////////////////////////////////////// diff --git a/plugins/MsgPopup/res/Version.rc b/plugins/MsgPopup/res/Version.rc new file mode 100644 index 0000000000..5bfbab4754 --- /dev/null +++ b/plugins/MsgPopup/res/Version.rc @@ -0,0 +1,38 @@ +// Microsoft Visual C++ generated resource script. +// +#ifdef APSTUDIO_INVOKED +#error this file is not editable by Microsoft Visual C++ +#endif //APSTUDIO_INVOKED + +#include "afxres.h" +#include "..\src\version.h" + +VS_VERSION_INFO VERSIONINFO + FILEVERSION __FILEVERSION_STRING + PRODUCTVERSION __FILEVERSION_STRING + FILEFLAGSMASK 0x17L +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x4L + FILETYPE 0x0L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "000004b0" + BEGIN + VALUE "FileDescription", __DESCRIPTION + VALUE "InternalName", __PLUGIN_NAME + VALUE "LegalCopyright", __COPYRIGHT + VALUE "OriginalFilename", __FILENAME + VALUE "ProductName", __PLUGIN_NAME + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x0, 1200 + END +END diff --git a/plugins/MsgPopup/src/Version.h b/plugins/MsgPopup/src/Version.h new file mode 100644 index 0000000000..33bbd248a7 --- /dev/null +++ b/plugins/MsgPopup/src/Version.h @@ -0,0 +1,14 @@ +#define __MAJOR_VERSION 0 +#define __MINOR_VERSION 1 +#define __RELEASE_NUM 1 +#define __BUILD_NUM 3 + +#define __FILEVERSION_STRING __MAJOR_VERSION,__MINOR_VERSION,__RELEASE_NUM,__BUILD_NUM + +#define __PLUGIN_NAME "Message popup" +#define __FILENAME "MsgPopup.dll" +#define __DESCRIPTION "Plugin replaces MessageBoxes [whose have only OK button] into Popups." +#define __AUTHOR "StDenis" +#define __AUTHOREMAIL "stdenformiranda@fromru.com" +#define __AUTHORWEB "http://miranda-ng.org/" +#define __COPYRIGHT "© 2004 Denis Stanishevskiy" diff --git a/plugins/MsgPopup/src/common.h b/plugins/MsgPopup/src/common.h index fbff74293b..2e85b4b5c3 100644 --- a/plugins/MsgPopup/src/common.h +++ b/plugins/MsgPopup/src/common.h @@ -24,17 +24,16 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include #include -#include "newpluginapi.h" -#include "m_system.h" -#include "m_database.h" -#include "m_langpack.h" -#include "m_clist.h" -#include "m_options.h" -#include "m_utils.h" -#include "m_popup.h" +#include +#include +#include +#include +#include +#include #include "options.h" #include "resource.h" +#include "Version.h" #define SERVICENAME "MessagePopup" diff --git a/plugins/MsgPopup/src/main.cpp b/plugins/MsgPopup/src/main.cpp index bed3764b52..ea6c69c0df 100644 --- a/plugins/MsgPopup/src/main.cpp +++ b/plugins/MsgPopup/src/main.cpp @@ -35,26 +35,28 @@ MSGBOXOPTIONS options; PLUGININFOEX pluginInfo={ sizeof(PLUGININFOEX), - SERVICENAME, - PLUGIN_MAKE_VERSION( 0,0,0,1 ), - "This stuff will replace MessageBox'es [whose have only OK button] into Popups", - "Denis Stanishevskiy // StDenis", - "stdenformiranda(at)fromru(dot)com", - "Copyright (c) 2004, Denis Stanishevskiy", - "", - 0, 0 + __PLUGIN_NAME, + PLUGIN_MAKE_VERSION(__MAJOR_VERSION, __MINOR_VERSION, __RELEASE_NUM, __BUILD_NUM), + __DESCRIPTION, + __AUTHOR, + __AUTHOREMAIL, + __COPYRIGHT, + __AUTHORWEB, + UNICODE_AWARE, + // {CF25D645-4DAB-4B0A-B9F1-DE1E86231F9B} + {0xcf25d645, 0x4dab, 0x4b0a, {0xb9, 0xf1, 0xde, 0x1e, 0x86, 0x23, 0x1f, 0x9b}} }; -typedef int (WINAPI *MSGBOXPROC)(HWND hWnd, LPCSTR lpText, LPCSTR lpCaption, UINT uType); +typedef int (WINAPI *MSGBOXPROC)(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType); -MSGBOXPROC prevMessageBoxA; +MSGBOXPROC prevMessageBox; #define OIC_HAND 32513 #define OIC_QUES 32514 #define OIC_BANG 32515 #define OIC_NOTE 32516 -void popupMessage(LPCSTR lpText, LPCSTR lpCaption, UINT uType) +void popupMessage(LPCTSTR lpText, LPCTSTR lpCaption, UINT uType) { POPUPDATAT ppd = {0}; int iIcon; @@ -85,17 +87,17 @@ void popupMessage(LPCSTR lpText, LPCSTR lpCaption, UINT uType) ppd.iSeconds = options.Timeout[indx]; ppd.lchIcon = (HICON)LoadImage(NULL, MAKEINTRESOURCE(iIcon), IMAGE_ICON, SM_CXSMICON, SM_CYSMICON, LR_SHARED); - lstrcpy(ppd.lpzContactName, lpCaption); - lstrcpy(ppd.lpzText, lpText); + lstrcpy(ppd.lptzContactName, lpCaption); + lstrcpy(ppd.lptzText, lpText); PUAddPopUpT(&ppd); if(options.Sound) MessageBeep(uType); } -int WINAPI newMessageBoxA(HWND hWnd, LPCSTR lpText, LPCSTR lpCaption, UINT uType) +int WINAPI newMessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType) { - if(CallService(MS_POPUP_QUERY, PUQS_GETSTATUS, 0) == CALLSERVICE_NOTFOUND || (uType & 0x0F)) - return prevMessageBoxA(hWnd, lpText, lpCaption, uType); + if (CallService(MS_POPUP_QUERY, PUQS_GETSTATUS, 0) == CALLSERVICE_NOTFOUND || (uType & 0x0F)) + return prevMessageBox(hWnd, lpText, lpCaption, uType); popupMessage(lpText, lpCaption,uType); return IDOK; @@ -137,12 +139,11 @@ void HookOnImport(HMODULE hModule, char *lpszImpModName, DWORD lpOrigFunc, DWORD { if(!g_HookError) { - char buf[200]; + TCHAR buf[200]; g_HookError = TRUE; - wsprintf(buf, "VirtualProtect failed. Code %d\n" - "Try to call the author", GetLastError()); - prevMessageBoxA(0, buf, "MsgBox", MB_OK); + mir_sntprintf(buf, SIZEOF(buf), TranslateT("VirtualProtect failed. Code %d\nTry to call the author"), GetLastError()); + prevMessageBox(0, buf, TranslateT("MsgBox"), MB_OK); } } *(DWORD*)ppfn = lpNewFunc; @@ -151,9 +152,7 @@ void HookOnImport(HMODULE hModule, char *lpszImpModName, DWORD lpOrigFunc, DWORD if(!g_HookError2) { g_HookError2 = TRUE; - prevMessageBoxA(0, "Hmm. Something goes wrong. I can't write into the memory.\n" - "And as u can c, there are no any exception raised..\n" - "Try to call the author", "MsgBox", MB_OK); + prevMessageBox(0, TranslateT("Hmm. Something goes wrong. I can't write into the memory.\nAnd as u can c, there are no any exception raised..\nTry to call the author"), TranslateT("MsgBox"), MB_OK); } } } @@ -164,10 +163,10 @@ void HookOnImport(HMODULE hModule, char *lpszImpModName, DWORD lpOrigFunc, DWORD void HookAPI() { - DWORD lpMessageBox = (DWORD)GetProcAddress(GetModuleHandle("USER32.DLL"), "MessageBoxA"); - DWORD lpPopupMsgBox = (DWORD)newMessageBoxA; + DWORD lpMessageBox = (DWORD)GetProcAddress(GetModuleHandle(_T("USER32.DLL")), "MessageBoxW"); + DWORD lpPopupMsgBox = (DWORD)newMessageBox; - prevMessageBoxA = (MSGBOXPROC)lpMessageBox; + prevMessageBox = (MSGBOXPROC)lpMessageBox; BOOL bFound = FALSE; HANDLE hModuleSnap = NULL; @@ -203,7 +202,7 @@ int HookedOptions(WPARAM wParam, LPARAM lParam) OPTIONSDIALOGPAGE odp = {0}; odp.cbSize = sizeof(odp); odp.hInstance = hInst; - odp.pszTemplate = MAKEINTRESOURCE(IDD_OPTIONS); + odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPTIONS); odp.ptszTitle = LPGENT("MessagePopup"); odp.ptszGroup = LPGENT("Popups"); odp.flags = ODPF_BOLDGROUPS | ODPF_TCHAR; @@ -215,14 +214,16 @@ int HookedOptions(WPARAM wParam, LPARAM lParam) void LoadConfig() { - char *szNameFG = "FGx"; - char *szNameBG = "BGx"; - char *szNameTO = "TOx"; + char szNameFG[4]; + char szNameBG[4]; + char szNameTO[4]; int indx; for(indx = 0; indx < 4; indx++) { - szNameFG[2] = szNameBG[2] = szNameTO[2] = (char)(indx + '0'); + mir_snprintf(szNameFG, SIZEOF(szNameFG), "FG%d", indx); + mir_snprintf(szNameBG, SIZEOF(szNameBG), "BG%d", indx); + mir_snprintf(szNameTO, SIZEOF(szNameTO), "TO%d", indx); options.FG[indx] = DBGetContactSettingDword(NULL, SERVICENAME, szNameFG, optionsDefault.FG[indx]); options.BG[indx] = DBGetContactSettingDword(NULL, SERVICENAME, szNameBG, optionsDefault.BG[indx]); options.Timeout[indx] = DBGetContactSettingDword(NULL, SERVICENAME, szNameTO, (DWORD)optionsDefault.Timeout[indx]); diff --git a/plugins/MsgPopup/src/options.cpp b/plugins/MsgPopup/src/options.cpp index b5467dcbe5..2b251b57ae 100644 --- a/plugins/MsgPopup/src/options.cpp +++ b/plugins/MsgPopup/src/options.cpp @@ -60,10 +60,10 @@ INT_PTR CALLBACK OptionsDlgProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM l BOOL Translated; if(LOWORD(wParam) == IDC_PREVIEW) { - MessageBoxA(0, Translate("Message with question"), Translate(SERVICENAME " - demo"), MB_ICONQUESTION); - MessageBoxA(0, Translate("Message with exclamation"), Translate(SERVICENAME " - demo"), MB_ICONEXCLAMATION); - MessageBoxA(0, Translate("Message with error"), Translate(SERVICENAME " - demo"), MB_ICONSTOP); - MessageBoxA(0, Translate("Message with asterisk"), Translate(SERVICENAME " - demo"), MB_ICONASTERISK); + MessageBox(0, TranslateT("Message with question"), TranslateTS(_T(SERVICENAME) _T(" - demo")), MB_ICONQUESTION); + MessageBox(0, TranslateT("Message with exclamation"), TranslateTS(_T(SERVICENAME) _T(" - demo")), MB_ICONEXCLAMATION); + MessageBox(0, TranslateT("Message with error"), TranslateTS(_T(SERVICENAME) _T(" - demo")), MB_ICONSTOP); + MessageBox(0, TranslateT("Message with asterisk"), TranslateTS(_T(SERVICENAME) _T(" - demo")), MB_ICONASTERISK); return FALSE; } @@ -107,14 +107,16 @@ INT_PTR CALLBACK OptionsDlgProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM l case PSN_APPLY: { - char *szNameFG = "FGx"; - char *szNameBG = "BGx"; - char *szNameTO = "TOx"; + char szNameFG[4]; + char szNameBG[4]; + char szNameTO[4]; int indx; for(indx = 0; indx < 4; indx++) { - szNameFG[2] = szNameBG[2] = szNameTO[2] = (char)(indx + '0'); + mir_snprintf(szNameFG, SIZEOF(szNameFG), "FG%d", indx); + mir_snprintf(szNameBG, SIZEOF(szNameBG), "BG%d", indx); + mir_snprintf(szNameTO, SIZEOF(szNameTO), "TO%d", indx); DBWriteContactSettingDwordDef(NULL, SERVICENAME, szNameFG, options.FG[indx], optionsDefault.FG[indx]); DBWriteContactSettingDwordDef(NULL, SERVICENAME, szNameBG, options.BG[indx], optionsDefault.BG[indx]); diff --git a/plugins/MsgPopup/src/resource.h b/plugins/MsgPopup/src/resource.h index 27e128723b..5e5e771a3a 100644 --- a/plugins/MsgPopup/src/resource.h +++ b/plugins/MsgPopup/src/resource.h @@ -1,34 +1,15 @@ //{{NO_DEPENDENCIES}} -// Microsoft Developer Studio generated include file. -// Used by MsgBox.rc +// Microsoft Visual C++ generated include file. +// Used by C:\Temp\Myranda\plugins\MsgPopup\res\MsgPopup.rc // -#define IDD_OPTIONS 101 - -#define IDC_ASTERISK_BG 101 -#define IDC_ERROR_FG 102 -#define IDC_ERROR_BG 103 -#define IDC_EXCLAMATION_FG 104 -#define IDC_EXCLAMATION_BG 105 -#define IDC_QUESTION_FG 106 -#define IDC_QUESTION_BG 107 -#define IDC_ASTERISK_FG 108 -#define IDC_PREVIEW 109 - -#define IDC_TIMEOUT1 1000 -#define IDC_TIMEOUT2 1001 -#define IDC_TIMEOUT3 1002 -#define IDC_TIMEOUT4 1003 - -#define IDC_MESSAGEBEEP 1004 // Next default values for new objects // #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NO_MFC 1 -#define _APS_NEXT_RESOURCE_VALUE 135 +#define _APS_NEXT_RESOURCE_VALUE 101 #define _APS_NEXT_COMMAND_VALUE 40001 -#define _APS_NEXT_CONTROL_VALUE 1004 +#define _APS_NEXT_CONTROL_VALUE 1000 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif diff --git a/plugins/MsgPopup/src/stdafx.cpp b/plugins/MsgPopup/src/stdafx.cpp new file mode 100644 index 0000000000..1976d867da --- /dev/null +++ b/plugins/MsgPopup/src/stdafx.cpp @@ -0,0 +1,18 @@ +/* +Copyright (C) 2012-13 Miranda NG Project (http://miranda-ng.org) + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation version 2 +of the License. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include "common.h" \ No newline at end of file -- cgit v1.2.3