From 66526765714b08969548a414d3fa87dbe333242d Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Sat, 28 Jul 2012 19:25:08 +0000 Subject: "!Deprecated" folders moved from root directory to plugins git-svn-id: http://svn.miranda-ng.org/main/trunk@1230 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- !NotAdopted/SMS/recvdlg.cpp | 269 -------------------------------------------- 1 file changed, 269 deletions(-) delete mode 100644 !NotAdopted/SMS/recvdlg.cpp (limited to '!NotAdopted/SMS/recvdlg.cpp') diff --git a/!NotAdopted/SMS/recvdlg.cpp b/!NotAdopted/SMS/recvdlg.cpp deleted file mode 100644 index ec3998edfc..0000000000 --- a/!NotAdopted/SMS/recvdlg.cpp +++ /dev/null @@ -1,269 +0,0 @@ -/* -Miranda-IM SMS Plugin -Copyright (C) 2001-2 Richard Hughes -Copyright (C) 2007-2009 Rozhuk Ivan - -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. ---------------------------------------------------------------------------- - -This was the original words. -This plugin was modified by Ariel Shulman (NuKe007). -For any comments, problems, etc. contact me at Miranda-IM forums or E-Mail or ICQ. -All the information needed you can find at www.nuke007.tk -Enjoy the code and use it smartly! -*/ - -#include "main.h" -#include "recvdlg.h" - -//Defnition needed to the SMS window list -typedef struct -{ - LIST_MT_ITEM lmtListMTItem; - HWND hWnd; - HBRUSH hBkgBrush; - HANDLE hContact; -} RECV_SMS_WINDOW_DATA; - - - -BOOL CALLBACK RecvSmsDlgProc (HWND hWndDlg,UINT message,WPARAM wParam,LPARAM lParam); -#define GET_WINDOW_DATA(hWndDlg) ((RECV_SMS_WINDOW_DATA*)GetWindowLongPtr(hWndDlg,GWL_USERDATA)) - - - - - -DWORD RecvSMSWindowInitialize() -{ - DWORD dwRetErrorCode; - - dwRetErrorCode=ListMTInitialize(&ssSMSSettings.lmtRecvSMSWindowsListMT,0); -return(dwRetErrorCode); -} - -//This function destroy all SMS receive windows -void RecvSMSWindowDestroy() -{ - RECV_SMS_WINDOW_DATA *prswdWindowData; - - ListMTLock(&ssSMSSettings.lmtRecvSMSWindowsListMT); - while(ListMTItemGetFirst(&ssSMSSettings.lmtRecvSMSWindowsListMT,NULL,(LPVOID*)&prswdWindowData)==NO_ERROR) - {// цикл - RecvSMSWindowRemove(prswdWindowData->hWnd); - } - ListMTUnLock(&ssSMSSettings.lmtRecvSMSWindowsListMT); - ListMTDestroy(&ssSMSSettings.lmtRecvSMSWindowsListMT); -} - - -BOOL CALLBACK RecvSmsDlgProc(HWND hWndDlg,UINT message,WPARAM wParam,LPARAM lParam) -{ - RECV_SMS_WINDOW_DATA *prswdWindowData=GET_WINDOW_DATA(hWndDlg); - - switch(message){ - case WM_INITDIALOG: - TranslateDialogDefault(hWndDlg); //Translate intially - bid - - prswdWindowData=(RECV_SMS_WINDOW_DATA*)lParam; - SetWindowLongPtr(hWndDlg,GWL_USERDATA,(LONG_PTR)lParam); - - { - WNDPROC OldEditWndProc; - - OldEditWndProc=(WNDPROC)SetWindowLongPtr(GetDlgItem(hWndDlg,IDC_MESSAGE),GWL_WNDPROC,(LONG_PTR)MessageSubclassProc); - SetWindowLongPtr(GetDlgItem(hWndDlg,IDC_MESSAGE),GWL_USERDATA,(LONG_PTR)OldEditWndProc); - } - - { - HFONT hFont; - LOGFONT lf; - hFont=(HFONT)SEND_DLG_ITEM_MESSAGE(hWndDlg,IDC_MESSAGE,WM_GETFONT,0,0); - if (hFont && hFont!=(HFONT)SEND_DLG_ITEM_MESSAGE(hWndDlg,IDOK,WM_GETFONT,0,0)) DeleteObject(hFont); - LoadMsgDlgFont(MSGFONTID_YOURMSG,&lf,NULL); - hFont=CreateFontIndirect(&lf); - SEND_DLG_ITEM_MESSAGE(hWndDlg,IDC_MESSAGE,WM_SETFONT,(WPARAM)hFont,MAKELPARAM(TRUE,0)); - - COLORREF colour=DBGetContactSettingDword(NULL,SRMMMOD,SRMSGSET_BKGCOLOUR,SRMSGDEFSET_BKGCOLOUR); - prswdWindowData->hBkgBrush=CreateSolidBrush(colour); - } - - if (Utils_RestoreWindowPosition(hWndDlg,(DB_SMS_GetByte(NULL,"SavePerContact",0)? prswdWindowData->hContact:NULL),PROTOCOL_NAMEA,"recv")) - {// def pos - SetWindowPos(hWndDlg,0,200,200,400,350,SWP_NOZORDER); - } - InvalidateRect(GetDlgItem(hWndDlg,IDC_MESSAGE),NULL,FALSE); - break; - case WM_CTLCOLORSTATIC: - if ((HWND)lParam==GetDlgItem(hWndDlg,IDC_MESSAGE)) - { - COLORREF colour; - - LoadMsgDlgFont(MSGFONTID_YOURMSG,NULL,&colour); - SetTextColor((HDC)wParam,colour); - SetBkColor((HDC)wParam,DBGetContactSettingDword(NULL,SRMMMOD,SRMSGSET_BKGCOLOUR,SRMSGDEFSET_BKGCOLOUR)); - return((BOOL)prswdWindowData->hBkgBrush); - } - break; - case WM_GETMINMAXINFO: - ((LPMINMAXINFO)lParam)->ptMinTrackSize.x=300; - ((LPMINMAXINFO)lParam)->ptMinTrackSize.y=230; - break; - case WM_SIZE: - { - int cx,cy; - RECT rcWin; - - GetWindowRect(hWndDlg,&rcWin); - cx = rcWin.right - rcWin.left; - cy = rcWin.bottom - rcWin.top; - SetWindowPos(GetDlgItem(hWndDlg,IDC_MESSAGE),0,0,0,cx - 14,cy - 112,SWP_NOZORDER|SWP_NOMOVE); - SetWindowPos(GetDlgItem(hWndDlg,IDC_NAME),0,0,0,(cx*35)/100,20,SWP_NOZORDER|SWP_NOMOVE); - SetWindowPos(GetDlgItem(hWndDlg,IDC_NUMBER),0,cx - (cx*35)/100 - 11,5,(cx*35)/100,20,SWP_NOZORDER); - SetWindowPos(GetDlgItem(hWndDlg,IDC_ST_NUMBER),0,cx - (cx*35)/100 - 58,5,40,20,SWP_NOZORDER); - SetWindowPos(GetDlgItem(hWndDlg,IDC_READNEXT),0,cx - 87, cy - 60,80,25,SWP_NOZORDER); - SetWindowPos(GetDlgItem(hWndDlg,IDOK),0,cx/2 - 87,cy - 60,80,25,SWP_NOZORDER); - SetWindowPos(GetDlgItem(hWndDlg,IDCANCEL),0,cx/2 + 7,cy - 60,80,25,SWP_NOZORDER); - - RedrawWindow(hWndDlg,NULL,NULL,RDW_FRAME|RDW_INVALIDATE); - } - break; - case WM_COMMAND: - switch(LOWORD(wParam)){ - case IDOK: - { - WCHAR wszPhone[MAX_PHONE_LEN]; - HWND hwndSendSms; - HANDLE hContact; - - hContact=HContactFromPhone(wszPhone,GET_DLG_ITEM_TEXTW(hWndDlg,IDC_NUMBER,wszPhone,SIZEOF(wszPhone))); - hwndSendSms=SendSMSWindowIsOtherInstanceHContact(hContact); - if (hwndSendSms) - { - SetFocus(hwndSendSms); - }else{ - hwndSendSms=SendSMSWindowAdd(prswdWindowData->hContact); - SET_DLG_ITEM_TEXTW(hwndSendSms,IDC_ADDRESS,wszPhone); - } - } - case IDCANCEL: - RecvSMSWindowRemove(hWndDlg); - break; - } - break; - case WM_CLOSE: - DeleteObject(prswdWindowData->hBkgBrush); - RecvSMSWindowRemove(hWndDlg); - break; - } -return(FALSE); -} - -//SMS Receive window list functions - -//This function create a new SMS receive window, and insert it to the list. -//The function gets void and return the window HWND -HWND RecvSMSWindowAdd(HANDLE hContact,DWORD dwEventType,LPWSTR lpwszPhone,SIZE_T dwPhoneSize,LPSTR lpszMessage,SIZE_T dwMessageSize) -{ - HWND hRet=NULL; - - if ((dwPhoneSize+dwMessageSize)>MIN_SMS_DBEVENT_LEN) - { - LPWSTR lpwszMessage; - - lpwszMessage=(LPWSTR)MEMALLOC(((dwMessageSize+MAX_PATH)*sizeof(WCHAR))); - if (lpwszMessage) - { - RECV_SMS_WINDOW_DATA *prswdWindowData; - - prswdWindowData=(RECV_SMS_WINDOW_DATA*)MEMALLOC(sizeof(RECV_SMS_WINDOW_DATA)); - if (prswdWindowData) - { - prswdWindowData->hContact=hContact; - prswdWindowData->hWnd=CreateDialogParam(ssSMSSettings.hInstance,MAKEINTRESOURCE(IDD_RECVSMS),NULL,RecvSmsDlgProc,(LPARAM)prswdWindowData); - if (prswdWindowData->hWnd) - { - HICON hIcon; - WCHAR wszTitle[MAX_PATH]={0},wszPhoneLocal[MAX_PHONE_LEN]={0}; - UINT iIcon; - LPWSTR lpwszContactDisplayName,lpwszTitlepart; - - ListMTLock(&ssSMSSettings.lmtRecvSMSWindowsListMT); - ListMTItemAdd(&ssSMSSettings.lmtRecvSMSWindowsListMT,&prswdWindowData->lmtListMTItem,prswdWindowData); - ListMTUnLock(&ssSMSSettings.lmtRecvSMSWindowsListMT); - - switch(dwEventType){ - case ICQEVENTTYPE_SMS: - lpwszTitlepart=TranslateW(L"Received SMS"); - hIcon=LoadSkinnedIcon(SKINICON_OTHER_SMS); - break; - case ICQEVENTTYPE_SMSCONFIRMATION: - lpwszTitlepart=TranslateW(L"Received SMS Confirmation"); - GetDataFromMessage(lpszMessage,dwMessageSize,NULL,NULL,0,NULL,&iIcon); - hIcon=(HICON)LoadImage(ssSMSSettings.hInstance,MAKEINTRESOURCE(iIcon),IMAGE_ICON,0,0,LR_SHARED); - break; - default: - lpwszTitlepart=L"Unknown event type"; - } - - wszPhoneLocal[0]='+'; - if (dwPhoneSize) - { - dwPhoneSize=CopyNumberW((wszPhoneLocal+1),lpwszPhone,dwPhoneSize); - }else{ - GetDataFromMessage(lpszMessage,dwMessageSize,NULL,(wszPhoneLocal+1),(SIZEOF(wszPhoneLocal)-1),&dwPhoneSize,NULL); - dwPhoneSize++; - } - - lpwszContactDisplayName=GetContactNameW(hContact); - mir_sntprintf(wszTitle,SIZEOF(wszTitle),L"%s - %s",lpwszContactDisplayName,lpwszTitlepart); - MultiByteToWideChar(CP_UTF8,0,lpszMessage,dwMessageSize,lpwszMessage,(dwMessageSize+MAX_PATH)); - - SendMessageW(prswdWindowData->hWnd,WM_SETTEXT,NULL,(LPARAM)wszTitle); - SET_DLG_ITEM_TEXTW(prswdWindowData->hWnd,IDC_NAME,lpwszContactDisplayName); - SET_DLG_ITEM_TEXTW(prswdWindowData->hWnd,IDC_NUMBER,wszPhoneLocal); - SET_DLG_ITEM_TEXTW(prswdWindowData->hWnd,IDC_MESSAGE,lpwszMessage); - SendMessage(prswdWindowData->hWnd,WM_SETICON,ICON_BIG,(LPARAM)hIcon); - - SetFocus(GetDlgItem(prswdWindowData->hWnd,IDC_MESSAGE)); - hRet=prswdWindowData->hWnd; - }else{ - MEMFREE(prswdWindowData); - } - } - MEMFREE(lpwszMessage); - } - } -return(hRet); -} - -//This function close the SMS receive window that given, and remove it from the list. -//The function gets the HWND of the window that should be removed and return void -void RecvSMSWindowRemove(HWND hWndDlg) -{ - RECV_SMS_WINDOW_DATA *prswdWindowData=GET_WINDOW_DATA(hWndDlg); - - if (prswdWindowData) - { - Utils_SaveWindowPosition(hWndDlg,(DB_SMS_GetByte(NULL,"SavePerContact",0)? prswdWindowData->hContact:NULL),PROTOCOL_NAMEA,"recv"); - - ListMTLock(&ssSMSSettings.lmtRecvSMSWindowsListMT); - ListMTItemDelete(&ssSMSSettings.lmtRecvSMSWindowsListMT,&prswdWindowData->lmtListMTItem); - ListMTUnLock(&ssSMSSettings.lmtRecvSMSWindowsListMT); - MEMFREE(prswdWindowData); - } - DestroyWindow(hWndDlg); -} - -- cgit v1.2.3