{\r
if (m_arFileStates.GetAt(pNMLV->iItem)!=FPDLG_FILESTATE_PATCHED)\r
{\r
- m_pCallBack->PatchFile(GetFullPath(pNMLV->iItem), m_pPatch->GetRevision(pNMLV->iItem));\r
+ m_pCallBack->PatchFile(GetFullPath(pNMLV->iItem), m_pPatch->GetRevision(pNMLV->iItem),false,true);\r
}\r
}\r
}\r
UINT nFlags;\r
\r
nFlags = MF_STRING | (m_cFileList.GetSelectedCount()==1 ? MF_ENABLED : MF_DISABLED | MF_GRAYED);\r
+\r
+ temp.LoadString(IDS_PATCH_REVIEW);\r
+ popup.AppendMenu(nFlags, ID_PATCH_REVIEW, temp);\r
+ popup.SetDefaultItem(ID_PATCH_REVIEW, FALSE);\r
+\r
temp.LoadString(IDS_PATCH_PREVIEW);\r
- popup.AppendMenu(nFlags, ID_PATCHPREVIEW, temp);\r
- popup.SetDefaultItem(ID_PATCHPREVIEW, FALSE);\r
+ popup.AppendMenu(nFlags, ID_PATCHPREVIEW, temp); \r
\r
temp.LoadString(IDS_PATCH_ALL);\r
popup.AppendMenu(MF_STRING | MF_ENABLED, ID_PATCHALL, temp);\r
point = rect.CenterPoint();\r
}\r
\r
+ bool bReview=false;\r
+\r
int cmd = popup.TrackPopupMenu(TPM_RETURNCMD | TPM_LEFTALIGN | TPM_NONOTIFY, point.x, point.y, this, 0);\r
switch (cmd)\r
{\r
+ case ID_PATCH_REVIEW:\r
+ bReview = true;\r
+ //go through case\r
case ID_PATCHPREVIEW:\r
{\r
if (m_pCallBack)\r
int nIndex = m_cFileList.GetSelectionMark();\r
if ( m_arFileStates.GetAt(nIndex)!=FPDLG_FILESTATE_PATCHED)\r
{\r
- m_pCallBack->PatchFile(GetFullPath(nIndex), m_pPatch->GetRevision(nIndex));\r
+ m_pCallBack->PatchFile(GetFullPath(nIndex), m_pPatch->GetRevision(nIndex),false,bReview);\r
}\r
}\r
}\r
* \param sVersion the revision number of the file to patch\r
* \return TRUE if patching was successful\r
*/\r
- virtual BOOL PatchFile(CString sFilePath, CString sVersion, BOOL bAutoPatch = FALSE) = 0;\r
+ virtual BOOL PatchFile(CString sFilePath, CString sVersion, BOOL bAutoPatch = FALSE,BOOL bIsReview=FALSE) = 0;\r
\r
/**\r
* Callback function. Called when the user double clicks on a\r
#define ID_PATCHALL 1\r
#define ID_PATCHSELECTED 2\r
#define ID_PATCHPREVIEW 3\r
+#define ID_PATCH_REVIEW 4\r
/**\r
* \ingroup TortoiseMerge\r
*\r
}\r
\r
// Callback function\r
-BOOL CMainFrame::PatchFile(CString sFilePath, CString sVersion, BOOL bAutoPatch)\r
+BOOL CMainFrame::PatchFile(CString sFilePath, CString sVersion, BOOL bAutoPatch,BOOL bIsReview)\r
{\r
//first, do a "dry run" of patching...\r
if (!m_Patch.PatchFile(sFilePath))\r
progDlg.SetShowProgressBar(false);\r
progDlg.SetAnimation(IDR_DOWNLOAD);\r
progDlg.SetTime(FALSE);\r
- progDlg.ShowModeless(this);\r
+\r
+ if(!m_Patch.m_IsGitPatch)\r
+ progDlg.ShowModeless(this);\r
+\r
CString sBaseFile = m_TempFiles.GetTempFilePath();\r
if (!CAppUtils::GetVersionedFile(sFilePath, sVersion, sBaseFile, &progDlg, m_hWnd))\r
{\r
MessageBox(m_Patch.GetErrorMessage(), NULL, MB_ICONERROR);\r
return FALSE;\r
}\r
+ \r
CString temp;\r
- temp.Format(_T("%s Revision %s"), (LPCTSTR)CPathUtils::GetFileNameFromPath(sFilePath), (LPCTSTR)sVersion);\r
- m_Data.m_baseFile.SetFileName(sBaseFile);\r
- m_Data.m_baseFile.SetDescriptiveName(temp);\r
- temp.Format(_T("%s %s"), (LPCTSTR)CPathUtils::GetFileNameFromPath(sFilePath), (LPCTSTR)m_Data.m_sPatchPatched);\r
- m_Data.m_theirFile.SetFileName(sTempFile);\r
- m_Data.m_theirFile.SetDescriptiveName(temp);\r
- m_Data.m_yourFile.SetFileName(sFilePath);\r
- m_Data.m_yourFile.SetDescriptiveName(CPathUtils::GetFileNameFromPath(sFilePath));\r
- m_Data.m_mergedFile.SetFileName(sFilePath);\r
- m_Data.m_mergedFile.SetDescriptiveName(CPathUtils::GetFileNameFromPath(sFilePath));\r
+ if(bIsReview)\r
+ {\r
+ \r
+ temp.Format(_T("%s Revision %s"), (LPCTSTR)CPathUtils::GetFileNameFromPath(sFilePath), (LPCTSTR)sVersion);\r
+ m_Data.m_baseFile.SetFileName(sBaseFile);\r
+ m_Data.m_baseFile.SetDescriptiveName(temp);\r
+ temp.Format(_T("%s %s"), (LPCTSTR)CPathUtils::GetFileNameFromPath(sFilePath), (LPCTSTR)m_Data.m_sPatchPatched);\r
+ m_Data.m_yourFile.SetFileName(sTempFile);\r
+ m_Data.m_yourFile.SetDescriptiveName(temp);\r
+ m_Data.m_theirFile.SetOutOfUse();\r
+ m_Data.m_mergedFile.SetOutOfUse();\r
+ \r
+ }else\r
+ {\r
+ temp.Format(_T("%s Revision %s"), (LPCTSTR)CPathUtils::GetFileNameFromPath(sFilePath), (LPCTSTR)sVersion);\r
+ m_Data.m_baseFile.SetFileName(sBaseFile);\r
+ m_Data.m_baseFile.SetDescriptiveName(temp);\r
+ temp.Format(_T("%s %s"), (LPCTSTR)CPathUtils::GetFileNameFromPath(sFilePath), (LPCTSTR)m_Data.m_sPatchPatched);\r
+ m_Data.m_theirFile.SetFileName(sTempFile);\r
+ m_Data.m_theirFile.SetDescriptiveName(temp);\r
+ m_Data.m_yourFile.SetFileName(sFilePath);\r
+ m_Data.m_yourFile.SetDescriptiveName(CPathUtils::GetFileNameFromPath(sFilePath));\r
+ m_Data.m_mergedFile.SetFileName(sFilePath);\r
+ m_Data.m_mergedFile.SetDescriptiveName(CPathUtils::GetFileNameFromPath(sFilePath));\r
+ }\r
TRACE(_T("comparing %s and %s\nagainst the base file %s\n"), (LPCTSTR)sTempFile, (LPCTSTR)sFilePath, (LPCTSTR)sBaseFile);\r
+\r
+ \r
}\r
else\r
{\r