if(mask& CGit::LOG_INFO_DETECT_RENAME )\r
param += _T(" -M ");\r
\r
+ if(mask& CGit::LOG_INFO_FIRST_PARENT )\r
+ param += _T(" --first-parent ");\r
+ \r
+ if(mask& CGit::LOG_INFO_NO_MERGE )\r
+ param += _T(" --no-merges ");\r
param+=hash;\r
\r
cmd.Format(_T("git.exe log %s -z --topo-order --parents %s --pretty=format:\""),\r
LOG_INFO_ALL_BRANCH=0x20,\r
LOG_INFO_ONLY_HASH=0x40,\r
LOG_INFO_DETECT_RENAME=0x80,\r
- LOG_INFO_DETECT_COPYRENAME=0x100\r
+ LOG_INFO_DETECT_COPYRENAME=0x100,\r
+ LOG_INFO_FIRST_PARENT = 0x200,\r
+ LOG_INFO_NO_MERGE = 0x400,\r
}LOG_INFO_MASK;\r
\r
int GetRemoteList(STRING_VECTOR &list);\r
\r
m_From=CTime(1970,1,2,0,0,0);\r
m_To=CTime::GetCurrentTime();\r
- m_bAllBranch = FALSE;\r
+ m_ShowMask = 0;\r
m_LoadingThread = NULL;\r
\r
m_bExitThread=FALSE;\r
CString hash;\r
int mask;\r
mask = CGit::LOG_INFO_ONLY_HASH | CGit::LOG_INFO_BOUNDARY;\r
- if(this->m_bAllBranch)\r
- mask |= CGit::LOG_INFO_ALL_BRANCH;\r
+// if(this->m_bAllBranch)\r
+ mask |= m_ShowMask;\r
\r
this->m_logEntries.ParserShortLog(path,hash,-1,mask);\r
\r
CTime m_To;\r
\r
CTGitPath m_Path;\r
- BOOL m_bAllBranch;\r
+ int m_ShowMask;\r
\r
void GetTimeRange(CTime &oldest,CTime &latest);\r
virtual void ContextMenuAction(int cmd,int FirstSelect, int LastSelect)=0;\r
format.LoadString(IDS_LOG_SHOW_CURRENT_BRANCH);\r
temp.Format(format,g_Git.GetCurrentBranch());\r
m_btnShow.AddEntry(temp);\r
+ temp.LoadString(IDS_LOG_SHOW_FIRST_PARENT);\r
+ m_btnShow.AddEntry(temp);\r
+ temp.LoadString(IDS_LOG_SHOW_NO_MERGE);\r
+ m_btnShow.AddEntry(temp);\r
m_btnShow.SetCurrentEntry((LONG)CRegDWORD(_T("Software\\TortoiseGit\\ShowAllEntry")));\r
\r
temp.LoadString(IDS_LOG_SHOW_WHOLE);\r
DialogEnableWindow(IDC_REFRESH, TRUE);\r
\r
// PostMessage(WM_TIMER, LOGFILTER_TIMER);\r
-\r
+ GetDlgItem(IDC_PROGRESS)->ShowWindow(FALSE);\r
//CTime time=m_LogList.GetOldestTime();\r
CTime begin,end;\r
m_LogList.GetTimeRange(begin,end);\r
m_DateFrom.SetTime(&begin);\r
m_DateTo.SetTime(&end);\r
+\r
\r
}else\r
{\r
switch (entry)\r
{\r
case 0: // show all branch\r
- m_LogList.m_bAllBranch=true;\r
+ m_LogList.m_ShowMask=CGit::LOG_INFO_ALL_BRANCH;\r
break;\r
case 1: // show current branch\r
- m_LogList.m_bAllBranch=false;\r
- \r
+ m_LogList.m_ShowMask=0;\r
+ break;\r
+ case 2: // first parent\r
+ m_LogList.m_ShowMask=CGit::LOG_INFO_FIRST_PARENT;\r
+ break;\r
+ case 3: // no merge\r
+ m_LogList.m_ShowMask=CGit::LOG_INFO_NO_MERGE;\r
break;\r
}\r
}\r