From 48540940b6c28bb4378abfeb500ec45a625b37b6 Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Tue, 15 May 2012 10:38:20 +0000 Subject: initial commit git-svn-id: http://svn.miranda-ng.org/main/trunk@2 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/IcqOscarJ/UI/loginpassword.cpp | 104 +++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 protocols/IcqOscarJ/UI/loginpassword.cpp (limited to 'protocols/IcqOscarJ/UI/loginpassword.cpp') diff --git a/protocols/IcqOscarJ/UI/loginpassword.cpp b/protocols/IcqOscarJ/UI/loginpassword.cpp new file mode 100644 index 0000000000..b31f000f23 --- /dev/null +++ b/protocols/IcqOscarJ/UI/loginpassword.cpp @@ -0,0 +1,104 @@ +// ---------------------------------------------------------------------------80 +// ICQ plugin for Miranda Instant Messenger +// ________________________________________ +// +// Copyright © 2000-2001 Richard Hughes, Roland Rabien, Tristan Van de Vreede +// Copyright © 2001-2002 Jon Keating, Richard Hughes +// Copyright © 2002-2004 Martin Öberg, Sam Kothari, Robert Rainwater +// Copyright © 2004-2009 Joe Kucera +// +// 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. +// +// ----------------------------------------------------------------------------- +// +// File name : $URL: http://miranda.googlecode.com/svn/trunk/miranda/protocols/IcqOscarJ/UI/loginpassword.cpp $ +// Revision : $Revision: 14148 $ +// Last change on : $Date: 2012-03-10 00:01:01 +0200 (Сб, 10 мар 2012) $ +// Last change by : $Author: george.hazan $ +// +// DESCRIPTION: +// +// Describe me here please... +// +// ----------------------------------------------------------------------------- + +#include "icqoscar.h" + + +INT_PTR CALLBACK LoginPasswdDlgProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) +{ + CIcqProto* ppro = (CIcqProto*)GetWindowLongPtr( hwndDlg, GWLP_USERDATA ); + + switch (msg) { + case WM_INITDIALOG: + TranslateDialogDefault(hwndDlg); + + ppro = (CIcqProto*)lParam; + SetWindowLongPtr( hwndDlg, GWLP_USERDATA, lParam ); + { + SendMessage(hwndDlg, WM_SETICON, ICON_BIG, (LPARAM)ppro->m_hIconProtocol->GetIcon(true)); + SendMessage(hwndDlg, WM_SETICON, ICON_SMALL, (LPARAM)ppro->m_hIconProtocol->GetIcon()); + + DWORD dwUin = ppro->getContactUin(NULL); + + char pszUIN[MAX_PATH], str[MAX_PATH]; + null_snprintf(pszUIN, 128, ICQTranslateUtfStatic(LPGEN("Enter a password for UIN %u:"), str, MAX_PATH), dwUin); + SetDlgItemTextUtf(hwndDlg, IDC_INSTRUCTION, pszUIN); + + SendDlgItemMessage(hwndDlg, IDC_LOGINPW, EM_LIMITTEXT, PASSWORDMAXLEN - 1, 0); + + CheckDlgButton(hwndDlg, IDC_SAVEPASS, ppro->getSettingByte(NULL, "RememberPass", 0)); + } + break; + + case WM_DESTROY: + ppro->m_hIconProtocol->ReleaseIcon(true); + ppro->m_hIconProtocol->ReleaseIcon(); + break; + + case WM_CLOSE: + EndDialog(hwndDlg, 0); + break; + + case WM_COMMAND: + { + switch (LOWORD(wParam)) { + case IDOK: + ppro->m_bRememberPwd = (BYTE)IsDlgButtonChecked(hwndDlg, IDC_SAVEPASS); + ppro->setSettingByte(NULL, "RememberPass", ppro->m_bRememberPwd); + + GetDlgItemTextA(hwndDlg, IDC_LOGINPW, ppro->m_szPassword, sizeof(ppro->m_szPassword)); + + ppro->icq_login(ppro->m_szPassword); + + EndDialog(hwndDlg, IDOK); + break; + + case IDCANCEL: + ppro->SetCurrentStatus(ID_STATUS_OFFLINE); + EndDialog(hwndDlg, IDCANCEL); + break; + } + } + break; + } + + return FALSE; +} + +void CIcqProto::RequestPassword() +{ + DialogBoxParam(hInst, MAKEINTRESOURCE(IDD_LOGINPW), NULL, LoginPasswdDlgProc, LPARAM(this)); +} -- cgit v1.2.3