From a70586dacbd1ff6a9e406f0fde154c82ad99546b Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sun, 2 Mar 2014 12:02:22 +0000 Subject: compilation fix git-svn-id: http://svn.miranda-ng.org/main/trunk@8356 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/PluginUpdater/src/Compat/compat.h | 123 ++++++++++++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 plugins/PluginUpdater/src/Compat/compat.h (limited to 'plugins/PluginUpdater/src/Compat/compat.h') diff --git a/plugins/PluginUpdater/src/Compat/compat.h b/plugins/PluginUpdater/src/Compat/compat.h new file mode 100644 index 0000000000..8e3d152126 --- /dev/null +++ b/plugins/PluginUpdater/src/Compat/compat.h @@ -0,0 +1,123 @@ +#define db_free(A) DBFreeVariant(A) + +#define db_get_b(A,B,C,D) DBGetContactSettingByte(A,B,C,D) +#define db_get_dw(A,B,C,D) DBGetContactSettingDword(A,B,C,D) +#define db_get_s(A,B,C,D) DBGetContactSettingString(A,B,C,D) +#define db_get_ts(A,B,C,D) DBGetContactSettingTString(A,B,C,D) + +#define db_set_b(A,B,C,D) DBWriteContactSettingByte(A,B,C,D) +#define db_set_dw(A,B,C,D) DBWriteContactSettingDword(A,B,C,D) +#define db_set_s(A,B,C,D) DBWriteContactSettingString(A,B,C,D) +#define db_set_ts(A,B,C,D) DBWriteContactSettingTString(A,B,C,D) + +#define db_get_sa DBGetStringA +#define db_get_wsa DBGetStringW +#define db_get_tsa DBGetStringT + +template class mir_ptr +{ + T *data; + +public: + __inline mir_ptr() : data((T*)mir_calloc(sizeof(T))) {} + __inline mir_ptr(T *_p) : data(_p) {} + __inline ~mir_ptr() { mir_free(data); } + __inline T *operator = (T *_p) { if (data) mir_free(data); data = _p; return data; } + __inline T *operator->() const { return data; } + __inline operator T*() const { return data; } + __inline operator INT_PTR() const { return (INT_PTR)data; } +}; + +typedef mir_ptr ptrA; +typedef mir_ptr ptrT; + +struct VARST : public ptrT +{ + __forceinline VARST(const TCHAR *str) : + ptrT( Utils_ReplaceVarsT(str)) + {} +}; + +class _A2T +{ + TCHAR *buf; + +public: + __forceinline _A2T(const char *s) : buf(mir_a2t(s)) {} + __forceinline _A2T(const char *s, int cp) : buf(mir_a2t_cp(s, cp)) {} + ~_A2T() { mir_free(buf); } + + __forceinline operator TCHAR*() const + { return buf; + } +}; + +class _T2A +{ + char *buf; + +public: + __forceinline _T2A(const TCHAR *s) : buf(mir_t2a(s)) {} + __forceinline _T2A(const TCHAR *s, int cp) : buf(mir_t2a_cp(s, cp)) {} + __forceinline ~_T2A() { mir_free(buf); } + + __forceinline operator char*() const + { return buf; + } +}; + +__forceinline INT_PTR Options_Open(OPENOPTIONSDIALOG *ood) +{ + return CallService("Opt/OpenOptions", 0, (LPARAM)ood); +} + +__forceinline INT_PTR Options_AddPage(WPARAM wParam, OPTIONSDIALOGPAGE *odp) +{ + return CallService("Opt/AddPage", wParam, (LPARAM)odp); +} + +char* bin2hex(const void *pData, size_t len, char *dest); +char *rtrim(char *str); +int CreatePathToFileT(const TCHAR *ptszPath); + +#define NEWTSTR_ALLOCA(A) (A == NULL)?NULL:_tcscpy((TCHAR*)alloca((_tcslen(A)+1) *sizeof(TCHAR)), A) + +__forceinline HANDLE Skin_AddIcon(SKINICONDESC *si) +{ return (HANDLE)CallService("Skin2/Icons/AddIcon", 0, (LPARAM)si); +} + +__forceinline HICON Skin_GetIconByHandle(HANDLE hIcolibIcon, int size=0) +{ return (HICON)CallService(MS_SKIN2_GETICONBYHANDLE, size, (LPARAM)hIcolibIcon); +} + +__forceinline HANDLE Skin_GetIconHandle(const char *szIconName) +{ return (HANDLE)CallService(MS_SKIN2_GETICONHANDLE, 0, (LPARAM)szIconName); +} + +__forceinline HICON Skin_GetIcon(const char *szIconName, int size=0) +{ return (HICON)CallService(MS_SKIN2_GETICON, size, (LPARAM)szIconName); +} + +__forceinline void Skin_ReleaseIcon(const char* szIconName) +{ CallService(MS_SKIN2_RELEASEICON, 0, (LPARAM)szIconName); +} + +__forceinline void Skin_ReleaseIcon(HICON hIcon) +{ CallService(MS_SKIN2_RELEASEICON, (WPARAM)hIcon, 0); +} + +__forceinline HGENMENU Menu_AddMainMenuItem(CLISTMENUITEM *mi) +{ return (HGENMENU)CallService("CList/AddMainMenuItem", 0, (LPARAM)mi); +} + +__forceinline INT_PTR Hotkey_Register(HOTKEYDESC *hk) +{ return CallService("CoreHotkeys/Register", 0, (LPARAM)hk); +} + +__forceinline INT_PTR CreateDirectoryTreeT(const TCHAR *ptszPath) +{ return CallService(MS_UTILS_CREATEDIRTREET, 0, (LPARAM)ptszPath); +} + +int __forceinline PUDeletePopup(HWND hWndPopup) +{ return (int)SendMessage(hWndPopup, UM_DESTROYPOPUP, 0, 0); +} -- cgit v1.2.3