1 // MergeDlg.cpp : implementation file
\r
5 #include "TortoiseProc.h"
\r
6 #include "MergeDlg.h"
\r
9 #include "Messagebox.h"
\r
12 IMPLEMENT_DYNAMIC(CMergeDlg, CResizableStandAloneDialog)
\r
14 CMergeDlg::CMergeDlg(CWnd* pParent /*=NULL*/)
\r
15 : CResizableStandAloneDialog(CMergeDlg::IDD, pParent)
\r
20 CMergeDlg::~CMergeDlg()
\r
24 void CMergeDlg::DoDataExchange(CDataExchange* pDX)
\r
26 CDialog::DoDataExchange(pDX);
\r
27 DDX_Control(pDX, IDC_COMBOBOXEX_BRANCH, this->m_Branch);
\r
28 DDX_Control(pDX, IDC_COMBOBOXEX_TAGS, this->m_Tags);
\r
29 DDX_Control(pDX, IDC_COMBOBOXEX_VERSION, this->m_Version);
\r
31 DDX_Check(pDX,IDC_CHECK_NOFF,this->m_bNoFF);
\r
32 DDX_Check(pDX,IDC_CHECK_SQUASH,this->m_bSquash);
\r
36 BEGIN_MESSAGE_MAP(CMergeDlg, CResizableStandAloneDialog)
\r
37 ON_BN_CLICKED(IDC_RADIO_BRANCH, &CMergeDlg::OnBnClickedRadio)
\r
38 ON_BN_CLICKED(IDC_RADIO_TAGS, &CMergeDlg::OnBnClickedRadio)
\r
39 ON_BN_CLICKED(IDC_RADIO_VERSION, &CMergeDlg::OnBnClickedRadio)
\r
40 ON_BN_CLICKED(IDOK, &CMergeDlg::OnBnClickedOk)
\r
44 BOOL CMergeDlg::OnInitDialog()
\r
46 CResizableStandAloneDialog::OnInitDialog();
\r
48 AddAnchor(IDC_COMBOBOXEX_BRANCH, TOP_LEFT, TOP_RIGHT);
\r
49 AddAnchor(IDC_COMBOBOXEX_TAGS, TOP_LEFT, TOP_RIGHT);
\r
50 AddAnchor(IDC_COMBOBOXEX_VERSION, TOP_LEFT, TOP_RIGHT);
\r
52 AddAnchor(IDC_GROUP_BASEON, TOP_LEFT, TOP_RIGHT);
\r
53 AddAnchor(IDC_GROUP_OPTION, TOP_LEFT, TOP_RIGHT);
\r
55 AddAnchor(IDC_BUTTON_SHOW, TOP_RIGHT);
\r
57 AddAnchor(IDOK,BOTTOM_RIGHT);
\r
58 AddAnchor(IDCANCEL,BOTTOM_RIGHT);
\r
61 CheckRadioButton(IDC_RADIO_BRANCH,IDC_RADIO_VERSION,IDC_RADIO_BRANCH);
\r
64 g_Git.GetTagList(list);
\r
65 m_Tags.AddString(list);
\r
69 g_Git.GetBranchList(list,¤t,CGit::BRANCH_ALL);
\r
70 m_Branch.AddString(list);
\r
71 //m_Branch.SetCurSel(current);
\r
73 m_Version.LoadHistory(_T("Software\\TortoiseGit\\History\\VersionHash"), _T("hash"));
\r
74 m_Version.SetCurSel(0);
\r
81 // CMergeDlg message handlers
\r
83 void CMergeDlg::OnBnClickedRadio()
\r
85 // TODO: Add your control notification handler code here
\r
86 this->m_Branch.EnableWindow(FALSE);
\r
87 this->m_Tags.EnableWindow(FALSE);
\r
88 this->m_Version.EnableWindow(FALSE);
\r
89 int radio=GetCheckedRadioButton(IDC_RADIO_HEAD,IDC_RADIO_VERSION);
\r
92 case IDC_RADIO_BRANCH:
\r
93 this->m_Branch.EnableWindow(TRUE);
\r
95 case IDC_RADIO_TAGS:
\r
96 this->m_Tags.EnableWindow(TRUE);
\r
98 case IDC_RADIO_VERSION:
\r
99 this->m_Version.EnableWindow(TRUE);
\r
104 void CMergeDlg::OnBnClickedOk()
\r
106 // TODO: Add your control notification handler code here
\r
107 this->UpdateData(TRUE);
\r
109 int radio=GetCheckedRadioButton(IDC_RADIO_HEAD,IDC_RADIO_VERSION);
\r
112 case IDC_RADIO_BRANCH:
\r
113 this->m_Base=m_Branch.GetString();
\r
115 case IDC_RADIO_TAGS:
\r
116 this->m_Base=m_Tags.GetString();
\r
118 case IDC_RADIO_VERSION:
\r
119 this->m_Base=m_Version.GetString();
\r
123 if(m_Base.Trim().IsEmpty())
\r
125 CMessageBox::Show(NULL,_T("You must choose source"),_T("TortiseGit"),MB_OK);
\r
128 this->m_Version.SaveHistory();
\r