1 // FormatPatch.cpp : implementation file
\r
5 #include "TortoiseProc.h"
\r
6 #include "FormatPatchDlg.h"
\r
8 #include "BrowseFolder.h"
\r
9 // CFormatPatchDlg dialog
\r
11 IMPLEMENT_DYNAMIC(CFormatPatchDlg, CResizableStandAloneDialog)
\r
13 CFormatPatchDlg::CFormatPatchDlg(CWnd* pParent /*=NULL*/)
\r
14 : CResizableStandAloneDialog(CFormatPatchDlg::IDD, pParent),
\r
15 m_regSendMail(_T("Software\\TortoiseGit\\TortoiseProc\\FormatPatch\\SendMail"),0)
\r
18 this->m_bSendMail = m_regSendMail;
\r
19 this->m_Radio = IDC_RADIO_SINCE;
\r
22 CFormatPatchDlg::~CFormatPatchDlg()
\r
26 void CFormatPatchDlg::DoDataExchange(CDataExchange* pDX)
\r
28 CDialog::DoDataExchange(pDX);
\r
29 DDX_Control(pDX, IDC_COMBOBOXEX_DIR, m_cDir);
\r
30 DDX_Control(pDX, IDC_COMBOBOXEX_SINCE, m_cSince);
\r
31 DDX_Control(pDX, IDC_COMBOBOXEX_FROM, m_cFrom);
\r
32 DDX_Control(pDX, IDC_COMBOBOXEX_TO, m_cTo);
\r
33 DDX_Control(pDX, IDC_EDIT_NUM, m_cNum);
\r
35 DDX_Text(pDX,IDC_EDIT_NUM,m_Num);
\r
37 DDX_Text(pDX, IDC_COMBOBOXEX_DIR, m_Dir);
\r
38 DDX_Text(pDX, IDC_COMBOBOXEX_SINCE, m_Since);
\r
39 DDX_Text(pDX, IDC_COMBOBOXEX_FROM, m_From);
\r
40 DDX_Text(pDX, IDC_COMBOBOXEX_TO, m_To);
\r
42 DDX_Check(pDX, IDC_CHECK_SENDMAIL, m_bSendMail);
\r
46 BEGIN_MESSAGE_MAP(CFormatPatchDlg, CResizableStandAloneDialog)
\r
47 ON_BN_CLICKED(IDC_BUTTON_DIR, &CFormatPatchDlg::OnBnClickedButtonDir)
\r
48 ON_BN_CLICKED(IDC_BUTTON_FROM, &CFormatPatchDlg::OnBnClickedButtonFrom)
\r
49 ON_BN_CLICKED(IDC_BUTTON_TO, &CFormatPatchDlg::OnBnClickedButtonTo)
\r
50 ON_BN_CLICKED(IDOK, &CFormatPatchDlg::OnBnClickedOk)
\r
51 ON_BN_CLICKED(IDC_RADIO_SINCE, &CFormatPatchDlg::OnBnClickedRadio)
\r
52 ON_BN_CLICKED(IDC_RADIO_NUM, &CFormatPatchDlg::OnBnClickedRadio)
\r
53 ON_BN_CLICKED(IDC_RADIO_RANGE, &CFormatPatchDlg::OnBnClickedRadio)
\r
56 BOOL CFormatPatchDlg::OnInitDialog()
\r
58 CResizableStandAloneDialog::OnInitDialog();
\r
60 AddAnchor(IDC_GROUP_DIR, TOP_LEFT, TOP_RIGHT);
\r
61 AddAnchor(IDC_COMBOBOXEX_DIR,TOP_LEFT, TOP_RIGHT);
\r
62 AddAnchor(IDC_BUTTON_DIR, TOP_RIGHT);
\r
64 AddAnchor(IDC_GROUP_VERSION, TOP_LEFT, TOP_RIGHT);
\r
65 AddAnchor(IDC_COMBOBOXEX_SINCE, TOP_LEFT, TOP_RIGHT);
\r
66 AddAnchor(IDC_EDIT_NUM, TOP_LEFT, TOP_RIGHT);
\r
67 AddAnchor(IDC_SPIN_NUM, TOP_RIGHT);
\r
69 AddAnchor(IDC_COMBOBOXEX_FROM, TOP_LEFT, TOP_RIGHT);
\r
70 AddAnchor(IDC_COMBOBOXEX_TO, TOP_LEFT, TOP_RIGHT);
\r
72 AddAnchor(IDC_BUTTON_FROM, TOP_RIGHT);
\r
73 AddAnchor(IDC_BUTTON_TO, TOP_RIGHT);
\r
74 AddAnchor(IDC_CHECK_SENDMAIL,BOTTOM_LEFT);
\r
75 AddAnchor(IDOK,BOTTOM_RIGHT);
\r
76 AddAnchor(IDCANCEL,BOTTOM_RIGHT);
\r
78 this->AddOthersToAnchor();
\r
80 m_cDir.SetPathHistory(TRUE);
\r
81 m_cDir.LoadHistory(_T("Software\\TortoiseGit\\History\\FormatPatchURLS"), _T("path"));
\r
82 m_cDir.SetCurSel(0);
\r
85 g_Git.GetBranchList(list,NULL,CGit::BRANCH_ALL);
\r
86 m_cSince.AddString(list);
\r
88 if(!m_Since.IsEmpty())
\r
89 m_cSince.SetWindowText(m_Since);
\r
91 m_cFrom.LoadHistory(_T("Software\\TortoiseGit\\History\\FormatPatchFromURLS"), _T("ver"));
\r
92 m_cFrom.SetCurSel(0);
\r
94 if(!m_From.IsEmpty())
\r
95 m_cFrom.SetWindowText(m_From);
\r
97 m_cTo.LoadHistory(_T("Software\\TortoiseGit\\History\\FormatPatchToURLS"), _T("ver"));
\r
100 if(!m_To.IsEmpty())
\r
101 m_cTo.SetWindowText(m_To);
\r
103 this->CheckRadioButton(IDC_RADIO_SINCE,IDC_RADIO_RANGE,this->m_Radio);
\r
105 OnBnClickedRadio();
\r
107 EnableSaveRestore(_T("FormatPatchDlg"));
\r
110 // CFormatPatchDlg message handlers
\r
112 void CFormatPatchDlg::OnBnClickedButtonDir()
\r
114 // TODO: Add your control notification handler code here
\r
115 CBrowseFolder browseFolder;
\r
116 browseFolder.m_style = BIF_EDITBOX | BIF_NEWDIALOGSTYLE | BIF_RETURNFSANCESTORS | BIF_RETURNONLYFSDIRS;
\r
117 CString strCloneDirectory;
\r
118 this->UpdateData(TRUE);
\r
119 strCloneDirectory=m_Dir;
\r
120 if (browseFolder.Show(GetSafeHwnd(), strCloneDirectory) == CBrowseFolder::OK)
\r
122 m_Dir=strCloneDirectory;
\r
123 this->UpdateData(FALSE);
\r
127 void CFormatPatchDlg::OnBnClickedButtonFrom()
\r
129 // TODO: Add your control notification handler code here
\r
132 void CFormatPatchDlg::OnBnClickedButtonTo()
\r
134 // TODO: Add your control notification handler code here
\r
137 void CFormatPatchDlg::OnBnClickedOk()
\r
139 // TODO: Add your control notification handler code here
\r
141 m_cDir.SaveHistory();
\r
142 m_cFrom.SaveHistory();
\r
143 m_cTo.SaveHistory();
\r
144 this->UpdateData(TRUE);
\r
145 this->m_Radio=GetCheckedRadioButton(IDC_RADIO_SINCE,IDC_RADIO_RANGE);
\r
147 m_regSendMail=this->m_bSendMail;
\r
151 void CFormatPatchDlg::OnBnClickedRadio()
\r
153 // TODO: Add your control notification handler code here
\r
154 int radio=this->GetCheckedRadioButton(IDC_RADIO_SINCE,IDC_RADIO_RANGE);
\r
155 m_cSince.EnableWindow(FALSE);
\r
156 m_cNum.EnableWindow(FALSE);
\r
157 m_cFrom.EnableWindow(FALSE);
\r
158 m_cTo.EnableWindow(FALSE);
\r
161 case IDC_RADIO_SINCE:
\r
162 m_cSince.EnableWindow(TRUE);
\r
164 case IDC_RADIO_NUM:
\r
165 m_cNum.EnableWindow(TRUE);
\r
167 case IDC_RADIO_RANGE:
\r
168 m_cFrom.EnableWindow(TRUE);
\r
169 m_cTo.EnableWindow(TRUE);
\r