OSDN Git Service

Add "remote update" command at Sync Dialog
authorFrank Li <lznuaa@gmail.com>
Fri, 22 Jan 2010 13:10:25 +0000 (21:10 +0800)
committerFrank Li <lznuaa@gmail.com>
Fri, 22 Jan 2010 13:10:25 +0000 (21:10 +0800)
Signed-off-by: Frank Li <lznuaa@gmail.com>
src/TortoiseProc/SyncDlg.cpp
src/TortoiseProc/SyncDlg.h

index 3869925..5ac5dc8 100644 (file)
@@ -190,7 +190,24 @@ void CSyncDlg::OnBnClickedButtonPull()
                }\r
        }\r
 \r
+       ///Remote Update\r
+       if(CurrentEntry == 3)\r
+       {\r
+               m_CurrentCmd = GIT_COMMAND_REMOTE;\r
+               cmd=_T("git.exe remote update");\r
+               m_GitCmdList.push_back(cmd);\r
 \r
+               m_pThread = AfxBeginThread(ProgressThreadEntry, this, THREAD_PRIORITY_NORMAL,0,CREATE_SUSPENDED);\r
+               if (m_pThread==NULL)\r
+               {\r
+               //              ReportError(CString(MAKEINTRESOURCE(IDS_ERR_THREADSTARTFAILED)));\r
+               }\r
+               else\r
+               {\r
+                       m_pThread->m_bAutoDelete = TRUE;\r
+                       m_pThread->ResumeThread();\r
+               }\r
+       }\r
        \r
 }\r
 \r
@@ -631,6 +648,7 @@ BOOL CSyncDlg::OnInitDialog()
        this->m_ctrlPull.AddEntry(CString(_T("&Pull")));\r
        this->m_ctrlPull.AddEntry(CString(_T("Fetc&h")));\r
        this->m_ctrlPull.AddEntry(CString(_T("Fetch&&Re&base")));\r
+       this->m_ctrlPull.AddEntry(CString(_T("Remote Update")));\r
 \r
        this->m_ctrlSubmodule.AddEntry(CString(_T("Submodule Update")));\r
        this->m_ctrlSubmodule.AddEntry(CString(_T("Submodule Init")));\r
@@ -837,6 +855,12 @@ LRESULT CSyncDlg::OnProgressUpdateUI(WPARAM wParam,LPARAM lParam)
                        EnableControlButton(true);\r
                        SwitchToInput();\r
                }\r
+               if(this->m_CurrentCmd == GIT_COMMAND_REMOTE)\r
+               {\r
+                       this->FetchOutList(true);\r
+                       EnableControlButton(true);\r
+                       SwitchToInput();\r
+               }\r
        }\r
 \r
        if(lParam != 0)\r
index 151e8d8..ff44225 100644 (file)
@@ -54,6 +54,7 @@ public:
                   GIT_COMMAND_FETCH,\r
                   GIT_COMMAND_FETCHANDREBASE,\r
                   GIT_COMMAND_SUBMODULE,\r
+                  GIT_COMMAND_REMOTE\r
                };\r
 protected:\r
        virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support\r