From: Johan 't Hart Date: Wed, 3 Jun 2009 23:27:17 +0000 (+0200) Subject: BrowseRefs: Add option to start reflog from BrowseRefs dialog. X-Git-Url: http://git.sourceforge.jp/view?p=tortoisegit%2FTortoiseGitJp.git;a=commitdiff_plain;h=7aee8dbcde3f358b02e46ec4980e050f6b74d140 BrowseRefs: Add option to start reflog from BrowseRefs dialog. --- diff --git a/src/TortoiseProc/BrowseRefsDlg.cpp b/src/TortoiseProc/BrowseRefsDlg.cpp index 05d046c..ab3d3f7 100644 --- a/src/TortoiseProc/BrowseRefsDlg.cpp +++ b/src/TortoiseProc/BrowseRefsDlg.cpp @@ -10,6 +10,7 @@ #include "Settings\SettingGitRemote.h" #include "SinglePropSheetDlg.h" #include "MessageBox.h" +#include "RefLogDlg.h" void SetSortArrow(CListCtrl * control, int nColumn, bool bAscending) { @@ -509,11 +510,27 @@ void CBrowseRefsDlg::ShowContextMenu(CPoint point, HTREEITEM hTreePos, VectorPSh if(selectedLeafs.size()==1) { + bool bShowReflogOption = false; popupMenu.AppendMenu(MF_STRING,eCmd_ViewLog,L"View log"); if(selectedLeafs[0]->IsFrom(L"refs/heads")) + { popupMenu.AppendMenu(MF_STRING,eCmd_DeleteBranch,L"Delete Branch"); + bShowReflogOption = true; + } + else if(selectedLeafs[0]->IsFrom(L"refs/remotes")) + { + bShowReflogOption = true; + } else if(selectedLeafs[0]->IsFrom(L"refs/tags")) + { popupMenu.AppendMenu(MF_STRING,eCmd_DeleteTag,L"Delete Tag"); + } + + if(bShowReflogOption) + popupMenu.AppendMenu(MF_STRING, eCmd_ShowReflog, L"Show Reflog"); + + + // CShadowTree* pTree = (CShadowTree*)m_ListRefLeafs.GetItemData(pNMHDR->idFrom); // if(pTree==NULL) @@ -560,6 +577,13 @@ void CBrowseRefsDlg::ShowContextMenu(CPoint point, HTREEITEM hTreePos, VectorPSh Refresh(); } break; + case eCmd_ShowReflog: + { + CRefLogDlg refLogDlg(this); + refLogDlg.m_CurrentBranch = selectedLeafs[0]->GetRefName(); + refLogDlg.DoModal(); + } + break; case eCmd_AddRemote: { CAddRemoteDlg(this).DoModal(); diff --git a/src/TortoiseProc/BrowseRefsDlg.h b/src/TortoiseProc/BrowseRefsDlg.h index 16391be..5bfa067 100644 --- a/src/TortoiseProc/BrowseRefsDlg.h +++ b/src/TortoiseProc/BrowseRefsDlg.h @@ -65,7 +65,8 @@ public: eCmd_CreateBranch, eCmd_CreateTag, eCmd_DeleteBranch, - eCmd_DeleteTag + eCmd_DeleteTag, + eCmd_ShowReflog }; enum eCol