#include "Settings.h"\r
#include "GitAdminDir.h"\r
#include "MessageBox.h"\r
+#include "ProjectProperties.h"\r
// CSettingGitConfig dialog\r
\r
IMPLEMENT_DYNAMIC(CSettingGitConfig, ISettingsPropPage)\r
, m_UserName(_T(""))\r
, m_UserEmail(_T(""))\r
, m_bGlobal(FALSE)\r
+ , m_bAutoCrlf(FALSE)\r
+ , m_bSafeCrLf(FALSE)\r
{\r
\r
}\r
\r
void CSettingGitConfig::DoDataExchange(CDataExchange* pDX)\r
{\r
- CPropertyPage::DoDataExchange(pDX);\r
- DDX_Text(pDX, IDC_GIT_USERNAME, m_UserName);\r
- DDX_Text(pDX, IDC_GIT_USEREMAIL, m_UserEmail);\r
- DDX_Check(pDX, IDC_CHECK_GLOBAL, m_bGlobal);\r
+ CPropertyPage::DoDataExchange(pDX);\r
+ DDX_Text(pDX, IDC_GIT_USERNAME, m_UserName);\r
+ DDX_Text(pDX, IDC_GIT_USEREMAIL, m_UserEmail);\r
+ DDX_Check(pDX, IDC_CHECK_GLOBAL, m_bGlobal);\r
+ DDX_Check(pDX, IDC_CHECK_AUTOCRLF, m_bAutoCrlf);\r
+ DDX_Check(pDX, IDC_CHECK_SAFECRLF, m_bSafeCrLf);\r
}\r
\r
\r
ON_BN_CLICKED(IDC_CHECK_GLOBAL, &CSettingGitConfig::OnBnClickedCheckGlobal)\r
ON_EN_CHANGE(IDC_GIT_USERNAME, &CSettingGitConfig::OnEnChangeGitUsername)\r
ON_EN_CHANGE(IDC_GIT_USEREMAIL, &CSettingGitConfig::OnEnChangeGitUseremail)\r
+ ON_BN_CLICKED(IDC_CHECK_AUTOCRLF, &CSettingGitConfig::OnBnClickedCheckAutocrlf)\r
+ ON_BN_CLICKED(IDC_CHECK_SAFECRLF, &CSettingGitConfig::OnBnClickedCheckSafecrlf)\r
END_MESSAGE_MAP()\r
\r
BOOL CSettingGitConfig::OnInitDialog()\r
\r
m_UserName=g_Git.GetUserName();\r
m_UserEmail=g_Git.GetUserEmail();\r
- \r
+\r
+ ProjectProperties::GetBOOLProps(this->m_bAutoCrlf,_T("core.autocrlf"));\r
+ ProjectProperties::GetBOOLProps(this->m_bSafeCrLf, _T("core.safecrlf"));\r
+\r
CString str=((CSettings*)GetParent())->m_CmdPath.GetWinPath();\r
CString proj;\r
if( g_GitAdminDir.HasAdminDir(str,&proj) )\r
return FALSE;\r
}\r
\r
+ out.Empty();\r
+ cmd.Format(_T("git.exe config %s core.autocrlf \"%s\""),global,this->m_bAutoCrlf?_T("true"):_T("false"));\r
+ if(g_Git.Run(cmd,&out,CP_ACP))\r
+ {\r
+ CMessageBox::Show(NULL,out,_T("TortoiseGit"),MB_OK|MB_ICONERROR);\r
+ return FALSE;\r
+ }\r
+\r
+ out.Empty();\r
+ cmd.Format(_T("git.exe config %s core.safecrlf \"%s\""),global,this->m_bSafeCrLf?_T("true"):_T("false"));\r
+ if(g_Git.Run(cmd,&out,CP_ACP))\r
+ {\r
+ CMessageBox::Show(NULL,out,_T("TortoiseGit"),MB_OK|MB_ICONERROR);\r
+ return FALSE;\r
+ }\r
SetModified(FALSE);\r
return ISettingsPropPage::OnApply();\r
-}
\ No newline at end of file
+}\r
+void CSettingGitConfig::OnBnClickedCheckAutocrlf()\r
+{\r
+ // TODO: Add your control notification handler code here\r
+ SetModified();\r
+}\r
+\r
+void CSettingGitConfig::OnBnClickedCheckSafecrlf()\r
+{\r
+ // TODO: Add your control notification handler code here\r
+ SetModified();\r
+}\r