OSDN Git Service

Enable formatpatch at log dialog
[tortoisegit/TortoiseGitJp.git] / src / TortoiseProc / GitLogListAction.cpp
index 63c33cf..a40b32e 100644 (file)
@@ -437,6 +437,38 @@ void CGitLogList::ContextMenuAction(int cmd,int FirstSelect, int LastSelect)
                                }\r
                        }\r
                        break;\r
+               case ID_CREATE_PATCH:\r
+                       {\r
+                               int select=this->GetSelectedCount();\r
+                               CString cmd;\r
+                               cmd = CPathUtils::GetAppDirectory()+_T("TortoiseProc.exe");\r
+                               cmd += _T(" /command:formatpatch");\r
+\r
+                               GitRev * r1 = reinterpret_cast<GitRev*>(m_arShownList.GetAt(FirstSelect));\r
+                               GitRev * r2 = NULL;\r
+                               if(select == 1)\r
+                               {\r
+                                       cmd += _T(" /startrev:")+r1->m_CommitHash;\r
+                               }\r
+                               else \r
+                               {\r
+                                       r2 = reinterpret_cast<GitRev*>(m_arShownList.GetAt(LastSelect));\r
+                                       if( this->m_IsOldFirst )\r
+                                       {       \r
+                                               cmd += _T(" /startrev:")+r1->m_CommitHash;\r
+                                               cmd += _T(" /endrev:")+r2->m_CommitHash;\r
+       \r
+                                       }else\r
+                                       {       \r
+                                               cmd += _T(" /startrev:")+r2->m_CommitHash;\r
+                                               cmd += _T(" /endrev:")+r1->m_CommitHash;        \r
+                                       }                               \r
+                                       \r
+                               }\r
+\r
+                               CAppUtils::LaunchApplication(cmd,IDS_ERR_PROC,false);\r
+                       }\r
+                       break;\r
                default:\r
                        //CMessageBox::Show(NULL,_T("Have not implemented"),_T("TortoiseGit"),MB_OK);\r
                        break;\r