1 // SendMailDlg.cpp : implementation file
\r
5 #include "TortoiseProc.h"
\r
6 #include "SendMailDlg.h"
\r
7 #include "MessageBox.h"
\r
8 #include "commonresource.h"
\r
9 // CSendMailDlg dialog
\r
11 IMPLEMENT_DYNAMIC(CSendMailDlg, CResizableStandAloneDialog)
\r
13 CSendMailDlg::CSendMailDlg(CWnd* pParent /*=NULL*/)
\r
14 : CResizableStandAloneDialog(CSendMailDlg::IDD, pParent)
\r
18 , m_bAttachment(FALSE)
\r
24 CSendMailDlg::~CSendMailDlg()
\r
28 void CSendMailDlg::DoDataExchange(CDataExchange* pDX)
\r
30 CDialog::DoDataExchange(pDX);
\r
31 DDX_Text(pDX, IDC_SENDMAIL_TO, m_To);
\r
32 DDX_Text(pDX, IDC_SENDMAIL_CC, m_CC);
\r
33 DDX_Text(pDX, IDC_SENDMAIL_SUBJECT, m_Subject);
\r
34 DDX_Check(pDX, IDC_SENDMAIL_ATTACHMENT, m_bAttachment);
\r
35 DDX_Check(pDX, IDC_SENDMAIL_COMBINE, m_bBranch);
\r
36 DDX_Control(pDX, IDC_SENDMAIL_PATCHS, m_ctrlList);
\r
37 DDX_Control(pDX,IDC_SENDMAIL_SETUP, this->m_SmtpSetup);
\r
38 DDX_Control(pDX,IDC_SENDMAIL_TO,m_ctrlTO);
\r
39 DDX_Control(pDX,IDC_SENDMAIL_CC,m_ctrlCC);
\r
43 BEGIN_MESSAGE_MAP(CSendMailDlg, CResizableStandAloneDialog)
\r
44 ON_BN_CLICKED(IDC_SENDMAIL_COMBINE, &CSendMailDlg::OnBnClickedSendmailCombine)
\r
45 ON_BN_CLICKED(IDOK, &CSendMailDlg::OnBnClickedOk)
\r
49 // CSendMailDlg message handlers
\r
51 BOOL CSendMailDlg::OnInitDialog()
\r
53 CResizableStandAloneDialog::OnInitDialog();
\r
55 AddAnchor(IDC_SENDMAIL_GROUP,TOP_LEFT,TOP_RIGHT);
\r
56 AddAnchor(IDC_SENDMAIL_TO,TOP_LEFT,TOP_RIGHT);
\r
57 AddAnchor(IDC_SENDMAIL_CC,TOP_LEFT,TOP_RIGHT);
\r
58 AddAnchor(IDC_SENDMAIL_SUBJECT,TOP_LEFT,TOP_RIGHT);
\r
59 AddAnchor(IDC_SENDMAIL_SETUP,TOP_RIGHT);
\r
61 AddAnchor(IDC_SENDMAIL_PATCHS,TOP_LEFT,BOTTOM_RIGHT);
\r
62 AddAnchor(IDOK,BOTTOM_RIGHT);
\r
63 AddAnchor(IDCANCEL,BOTTOM_RIGHT);
\r
65 this->AddOthersToAnchor();
\r
66 EnableSaveRestore(_T("SendMailDlg"));
\r
71 m_ctrlCC.SetSeparator(_T(";"));
\r
72 m_ctrlTO.SetSeparator(_T(";"));
\r
74 m_AddressReg.SetMaxHistoryItems(0xFFFF);
\r
76 m_AddressReg.Load(_T("Software\\TortoiseGit\\TortoiseProc\\EmailAddress\\"),_T("email"));
\r
77 for(int i=0;i<m_AddressReg.GetCount();i++)
\r
79 m_ctrlCC.AddSearchString(m_AddressReg.GetEntry(i));
\r
80 m_ctrlTO.AddSearchString(m_AddressReg.GetEntry(i));
\r
83 m_ctrlList.SetExtendedStyle( m_ctrlList.GetExtendedStyle()| LVS_EX_CHECKBOXES );
\r
85 for(int i=0;i<m_PathList.GetCount();i++)
\r
87 m_ctrlList.InsertItem(i,m_PathList[i].GetWinPathString());
\r
88 m_ctrlList.SetCheck(i,true);
\r
91 // m_ctrlCC.AddSearchString(_T("Tortoisegit-dev@google.com"));
\r
92 // m_ctrlTO.AddSearchString(_T("Tortoisegit-dev@google.com"));
\r
96 void CSendMailDlg::OnBnClickedSendmailCombine()
\r
98 // TODO: Add your control notification handler code here
\r
101 void CSendMailDlg::OnBnClickedOk()
\r
104 this->UpdateData();
\r
105 if(this->m_To.IsEmpty() && this->m_CC.IsEmpty())
\r
107 CMessageBox::Show(NULL,IDS_ERR_ADDRESS_NO_EMPTY,IDS_APPNAME,MB_OK|MB_ICONERROR);
\r
114 Address=this->m_CC.Tokenize(_T(";"),start);
\r
115 m_AddressReg.AddEntry(Address);
\r
116 m_AddressReg.Save();
\r
121 Address=this->m_To.Tokenize(_T(";"),start);
\r
122 m_AddressReg.AddEntry(Address);
\r
123 m_AddressReg.Save();
\r
127 // TODO: Add your control notification handler code here
\r