summaryrefslogtreecommitdiff
path: root/protocols/SkypeWeb/src/skype_dialogs.h
blob: ee834bcd3540cecb2d58573bf94f9e438609b325 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#ifndef _SKYPE_DIALOGS_H_
#define _SKYPE_DIALOGS_H_

class CSkypeDlgBase : public CProtoDlgBase<CSkypeProto>
{
private:
	typedef CProtoDlgBase<CSkypeProto> CSuper;

protected:
	__inline CSkypeDlgBase(CSkypeProto *proto, int idDialog, HWND parent, bool show_label = true) :
		CSuper(proto, idDialog, parent, show_label) { }
};

class CSkypePasswordEditor : public CSkypeDlgBase
{
private:
	typedef CSkypeDlgBase CSuper;

	CCtrlEdit m_password;
	CCtrlCheck m_savePermanently;

	CCtrlButton m_ok;

protected:
	void OnInitDialog()
	{
		SendMessage(m_password.GetHwnd(), EM_LIMITTEXT, 20, 0);
	}

	void OnOk(CCtrlButton*)
	{
		/*if (m_savePermanently.Enabled())
			m_proto->setString("Password", m_password.GetTextA());
		if (m_proto->password != NULL)
			mir_free(m_proto->password);
		m_proto->password = mir_utf8encodeW(m_password.GetText());
		*/
		EndDialog(m_hwnd, 1);
	}

public:
	CSkypePasswordEditor(CSkypeProto *proto) :
		CSuper(proto, IDD_PASSWORD_EDITOR, NULL, false), m_ok(this, IDOK),
		m_password(this, IDC_PASSWORD), m_savePermanently(this, IDC_SAVEPERMANENTLY)
	{
		m_ok.OnClick = Callback(this, &CSkypePasswordEditor::OnOk);
	}
};

#endif //_SKYPE_DIALOGS_H_