diff options
Diffstat (limited to 'tools/_deprecated/YahooGroups/src/utils.cpp')
-rw-r--r-- | tools/_deprecated/YahooGroups/src/utils.cpp | 298 |
1 files changed, 0 insertions, 298 deletions
diff --git a/tools/_deprecated/YahooGroups/src/utils.cpp b/tools/_deprecated/YahooGroups/src/utils.cpp deleted file mode 100644 index 7b9ff8ec90..0000000000 --- a/tools/_deprecated/YahooGroups/src/utils.cpp +++ /dev/null @@ -1,298 +0,0 @@ -/*
-YahooGroups plugin for Miranda IM
-
-Copyright © 2007 Cristian Libotean
-
-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; either version 2
-of the License, or (at your option) any later version.
-
-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, write to the Free Software
-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-*/
-
-#include "stdafx.h"
-
-int Info(char *title, char *format, ...)
-{
- char str[4096];
- va_list vararg;
- int tBytes;
- va_start(vararg, format);
- tBytes = mir_vsnprintf(str, sizeof(str), format, vararg);
- if (tBytes > 0)
- str[tBytes] = 0;
-
- va_end(vararg);
- return MessageBoxA(0, str, title, MB_OK | MB_ICONINFORMATION);
-}
-
-int MyPUShowMessage(wchar_t *lpzText, BYTE kind)
-{
- if (ServiceExists(MS_POPUP_SHOWMESSAGE))
- {
- return PUShowMessageT(lpzText, kind);
- }
- else{
- wchar_t *title = (kind == SM_NOTIFY) ? TranslateT("Notify") : TranslateT("Warning");
-
- return MessageBox(NULL, lpzText, title, MB_OK | (kind == SM_NOTIFY) ? MB_ICONINFORMATION : MB_ICONEXCLAMATION);
- }
-}
-
-#define HEX_SIZE 8
-
-char *BinToHex(int size, PBYTE data)
-{
- char *szresult = NULL;
- char buffer[32] = {0}; //should be more than enough
- int maxSize = size * 2 + HEX_SIZE + 1;
- szresult = (char *) new char[ maxSize ];
- memset(szresult, 0, maxSize);
- mir_snprintf(buffer, "%0*X", HEX_SIZE, size);
- mir_strcpy(szresult, buffer);
- int i;
- for (i = 0; i < size; i++)
- {
- mir_snprintf(buffer, "%02X", data[i]);
- mir_strcpy(szresult + (HEX_SIZE + i * 2), buffer);
- }
- return szresult;
-}
-
-void HexToBin(char *inData, ULONG &size, LPBYTE &outData)
-{
- char buffer[32] = {0};
- mir_strcpy(buffer, "0x");
- strncpy(buffer + 2, inData, HEX_SIZE);
- sscanf(buffer, "%x", &size);
- outData = (unsigned char*)new char[size*2];
- UINT i;
- //size = i;
- char *tmp = inData + HEX_SIZE;
- buffer[4] = '\0'; //mark the end of the string
- for (i = 0; i < size; i++)
- {
- strncpy(buffer + 2, &tmp[i * 2], 2);
- sscanf(buffer, "%hhx", &outData[i]);
- }
- i = size;
-}
-
-int GetStringFromDatabase(MCONTACT hContact, char *szModule, char *szSettingName, char *szError, char *szResult, int size)
-{
- DBVARIANT dbv = {0};
- int res = 1;
- int len;
- dbv.type = DBVT_ASCIIZ;
- if (db_get_s(hContact, szModule, szSettingName, &dbv) == 0)
- {
- res = 0;
- int tmp = (int)mir_strlen(dbv.pszVal);
- len = (tmp < size - 1) ? tmp : size - 1;
- strncpy(szResult, dbv.pszVal, len);
- szResult[len] = '\0';
- mir_free(dbv.pszVal);
- }
- else{
- res = 1;
- if (szError)
- {
- int tmp = (int)mir_strlen(szError);
- len = (tmp < size - 1) ? tmp : size - 1;
- strncpy(szResult, szError, len);
- szResult[len] = '\0';
- }
- else{
- szResult[0] = '\0';
- }
- }
- return res;
-}
-
-int GetStringFromDatabase(MCONTACT hContact, char *szModule, char *szSettingName, WCHAR *szError, WCHAR *szResult, int count)
-{
- DBVARIANT dbv = {0};
- int res = 1;
- int len;
- dbv.type = DBVT_WCHAR;
- if ( db_get_s(hContact, szModule, szSettingName, &dbv, 0) == 0) {
- res = 0;
- if (dbv.type != DBVT_WCHAR)
- MultiByteToWideChar(CP_ACP, 0, dbv.pszVal, -1, szResult, count);
- else {
- int tmp = (int)mir_wstrlen(dbv.pwszVal);
- len = (tmp < count - 1) ? tmp : count - 1;
- wcsncpy(szResult, dbv.pwszVal, len);
- szResult[len] = L'\0';
- }
- mir_free(dbv.pwszVal);
- }
- else {
- res = 1;
- if (szError) {
- int tmp = (int)mir_wstrlen(szError);
- len = (tmp < count - 1) ? tmp : count - 1;
- wcsncpy(szResult, szError, len);
- szResult[len] = L'\0';
- }
- else szResult[0] = L'\0';
- }
- return res;
-}
-
-int GetStringFromDatabase(char *szSettingName, char *szError, char *szResult, int size)
-{
- return GetStringFromDatabase(NULL, ModuleName, szSettingName, szError, szResult, size);
-}
-
-int GetStringFromDatabase(char *szSettingName, WCHAR *szError, WCHAR *szResult, int count)
-{
- return GetStringFromDatabase(NULL, ModuleName, szSettingName, szError, szResult, count);
-}
-
-wchar_t* GetContactName(MCONTACT hContact, char *szProto)
-{
- ptrW id(Contact_GetInfo(CNF_DISPLAYUID, hContact, szProto));
- return (id != NULL) ? wcsdup(id) : NULL;
-}
-
-void GetContactProtocol(MCONTACT hContact, char *szProto, int size)
-{
- GetStringFromDatabase(hContact, "Protocol", "p", NULL, szProto, size);
-}
-
-wchar_t *GetContactID(MCONTACT hContact)
-{
- char protocol[256];
- GetContactProtocol(hContact, protocol, sizeof(protocol));
-
- return GetContactID(hContact, protocol);
-}
-
-wchar_t* GetContactID(MCONTACT hContact, char *szProto)
-{
- ptrW id(Contact_GetInfo(CNF_DISPLAY, hContact, szProto));
- return (id != NULL) ? wcsdup(id) : NULL;
-}
-
-MCONTACT GetContactFromID(wchar_t *szID, char *szProto)
-{
- wchar_t *szHandle;
- wchar_t dispName[1024];
- char cProtocol[256];
- wchar_t *tmp;
-
- int found = 0;
- for (MCONTACT hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) {
- GetContactProtocol(hContact, cProtocol, sizeof(cProtocol));
- szHandle = GetContactID(hContact, cProtocol);
-
- tmp = pcli->pfnGetContactDisplayName(hContact, 0);
- wcsncpy(dispName, tmp, _countof(dispName));
-
- if ((szHandle) && ((mir_wstrcmpi(szHandle, szID) == 0) || (mir_wstrcmpi(dispName, szID) == 0)) && ((szProto == NULL) || (_stricmp(szProto, cProtocol) == 0)))
- found = 1;
-
- if (szHandle) { free(szHandle); }
-
- if (found)
- return hContact;
- }
-
- return NULL;
-}
-#pragma warning (default: 4312)
-
-#pragma warning (disable: 4312)
-MCONTACT GetContactFromID(wchar_t *szID, wchar_t *szProto)
-{
- char protocol[1024];
- WideCharToMultiByte(CP_ACP, 0, szProto, -1, protocol, sizeof(protocol), NULL, NULL);
- return GetContactFromID(szID, protocol);
-}
-#pragma warning (default: 4312)
-
-void ScreenToClient(HWND hWnd, LPRECT rect)
-{
- POINT pt;
- int cx = rect->right - rect->left;
- int cy = rect->bottom - rect->top;
- pt.x = rect->left;
- pt.y = rect->top;
- ScreenToClient(hWnd, &pt);
- rect->left = pt.x;
- rect->top = pt.y;
- rect->right = pt.x + cx;
- rect->bottom = pt.y + cy;
-}
-
-void AnchorMoveWindow(HWND window, const WINDOWPOS *parentPos, int anchors)
-{
- RECT rParent;
- RECT rChild;
-
- if (parentPos->flags & SWP_NOSIZE)
- {
- return;
- }
- GetWindowRect(parentPos->hwnd, &rParent);
- rChild = AnchorCalcPos(window, &rParent, parentPos, anchors);
- MoveWindow(window, rChild.left, rChild.top, rChild.right - rChild.left, rChild.bottom - rChild.top, FALSE);
-}
-
-RECT AnchorCalcPos(HWND window, const RECT *rParent, const WINDOWPOS *parentPos, int anchors)
-{
- RECT rChild;
- RECT rTmp;
-
- GetWindowRect(window, &rChild);
- ScreenToClient(parentPos->hwnd, &rChild);
-
- int cx = rParent->right - rParent->left;
- int cy = rParent->bottom - rParent->top;
- if ((cx == parentPos->cx) && (cy == parentPos->cy))
- {
- return rChild;
- }
- if (parentPos->flags & SWP_NOSIZE)
- {
- return rChild;
- }
-
- rTmp.left = parentPos->x - rParent->left;
- rTmp.right = (parentPos->x + parentPos->cx) - rParent->right;
- rTmp.bottom = (parentPos->y + parentPos->cy) - rParent->bottom;
- rTmp.top = parentPos->y - rParent->top;
-
- cx = (rTmp.left) ? -rTmp.left : rTmp.right;
- cy = (rTmp.top) ? -rTmp.top : rTmp.bottom;
-
- rChild.right += cx;
- rChild.bottom += cy;
- //expanded the window accordingly, now we need to enforce the anchors
- if ((anchors & ANCHOR_LEFT) && (!(anchors & ANCHOR_RIGHT)))
- {
- rChild.right -= cx;
- }
- if ((anchors & ANCHOR_TOP) && (!(anchors & ANCHOR_BOTTOM)))
- {
- rChild.bottom -= cy;
- }
- if ((anchors & ANCHOR_RIGHT) && (!(anchors & ANCHOR_LEFT)))
- {
- rChild.left += cx;
- }
- if ((anchors & ANCHOR_BOTTOM) && (!(anchors & ANCHOR_TOP)))
- {
- rChild.top += cy;
- }
- return rChild;
-}
\ No newline at end of file |