1 // TortoiseGit - a Windows shell extension for easy version control
3 // Copyright (C) 2012-2013, 2015 - TortoiseGit
5 // This program is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU General Public License
7 // as published by the Free Software Foundation; either version 2
8 // of the License, or (at your option) any later version.
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software Foundation,
17 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
22 #include "GitProgressList.h"
27 SEND_MAIL_SMTP_DIRECT
= 0,
29 SEND_MAIL_SMTP_CONFIGURED
= 2,
35 static int SendMail(const CString
& FromName
, const CString
& FromMail
, const CString
& To
, const CString
& CC
, const CString
& subject
, const CString
& body
, CStringArray
&attachments
, CString
*errortext
);
36 static int SendMail(const CTGitPath
&item
, CGitProgressList
* instance
, const CString
& FromName
, const CString
& FromMail
, const CString
& To
, const CString
& CC
, const CString
&subject
, const CString
& body
, CStringArray
&attachments
);
37 CString m_sSenderName
;
38 CString m_sSenderMail
;
44 CSendMail(const CString
& To
, const CString
& CC
, bool m_bAttachment
);
46 virtual int Send(const CTGitPathList
& list
, CGitProgressList
* instance
) = 0;
49 class CSendMailCombineable
: public CSendMail
52 CSendMailCombineable(const CString
& To
, const CString
& CC
, const CString
& subject
, bool bAttachment
, bool bCombine
);
53 ~CSendMailCombineable(void);
55 virtual int Send(const CTGitPathList
& list
, CGitProgressList
* instance
) override
;
58 virtual int SendAsSingleMail(const CTGitPath
& path
, CGitProgressList
* instance
);
59 virtual int SendAsCombinedMail(const CTGitPathList
& list
, CGitProgressList
* instance
);