From 9c1caddc093440db53371c79f04c9b302b872644 Mon Sep 17 00:00:00 2001 From: Frank Li Date: Tue, 21 Apr 2009 13:26:42 +0800 Subject: [PATCH] Double click conflict item to launch conflict edit and double click group header to toggle select&deselect Signed-off-by: Frank Li --- src/Git/GitStatusListCtrl.cpp | 27 +++++++++++++-------------- src/Resources/TortoiseProcENG.rc | Bin 422662 -> 422692 bytes src/TortoiseProc/GitDiff.cpp | 4 ---- src/TortoiseProc/GitDiff.h | 1 - 4 files changed, 13 insertions(+), 19 deletions(-) diff --git a/src/Git/GitStatusListCtrl.cpp b/src/Git/GitStatusListCtrl.cpp index 9720e0bb4..452175014 100644 --- a/src/Git/GitStatusListCtrl.cpp +++ b/src/Git/GitStatusListCtrl.cpp @@ -3880,7 +3880,7 @@ void CGitStatusListCtrl::OnNMDblclk(NMHDR *pNMHDR, LRESULT *pResult) *pResult = 0; if (m_bBlock) return; -#if 0 + if (pNMLV->iItem < 0) { if (!IsGroupViewEnabled()) @@ -3907,7 +3907,8 @@ void CGitStatusListCtrl::OnNMDblclk(NMHDR *pNMHDR, LRESULT *pResult) GetItem(&lv); if (lv.iGroupId == group) { - FileEntry * entry = GetListEntry(i); + CTGitPath *entry=(CTGitPath*)GetItemData(i); + if (!bFirst) { bCheck = !GetCheck(i); @@ -3932,18 +3933,16 @@ void CGitStatusListCtrl::OnNMDblclk(NMHDR *pNMHDR, LRESULT *pResult) NotifyCheck(); return; } -#endif -// FileEntry * entry = GetListEntry(pNMLV->iItem); -// if (entry) - { -// if (entry->isConflicted) -// { -// gitDiff::StartConflictEditor(entry->GetPath()); -// } -// else - { - StartDiff(pNMLV->iItem); - } + + CTGitPath *file=(CTGitPath*)GetItemData(pNMLV->iItem); + + if( file->m_Action&CTGitPath::LOGACTIONS_UNMERGED ) + { + CAppUtils::ConflictEdit(*file,false); + + }else + { + StartDiff(pNMLV->iItem); } } diff --git a/src/Resources/TortoiseProcENG.rc b/src/Resources/TortoiseProcENG.rc index 098d40ce611b3877c32b8697f9fc131a71436e19..2f66a0627c9d10ae2f45f84418a6edf0fce0b91b 100644 GIT binary patch delta 46 zcwTFJCb{I9WJ3#M3)2>6nb^riE99p8m^1TCUKgp6nb^q{u{@L4MJlyt#4-ah3lOtz&xmE)BMJak-49m) diff --git a/src/TortoiseProc/GitDiff.cpp b/src/TortoiseProc/GitDiff.cpp index 553e9f778..49ea5e674 100644 --- a/src/TortoiseProc/GitDiff.cpp +++ b/src/TortoiseProc/GitDiff.cpp @@ -116,7 +116,3 @@ int CGitDiff::Diff(CTGitPath * pPath,CTGitPath * pPath2, git_revnum_t & rev1, gi return 0; } -int CGitDiff::StartConflictEditor(CTGitPath* /*file*/) -{ - return 0; -} \ No newline at end of file diff --git a/src/TortoiseProc/GitDiff.h b/src/TortoiseProc/GitDiff.h index 0fe8ffa90..a2e5385c8 100644 --- a/src/TortoiseProc/GitDiff.h +++ b/src/TortoiseProc/GitDiff.h @@ -13,5 +13,4 @@ public: // Use two path to handle rename cases static int Diff(CTGitPath * pPath1, CTGitPath *pPath2 ,git_revnum_t & rev1, git_revnum_t & rev2, bool blame=false, bool unified=false); static int DiffNull(CTGitPath *pPath, git_revnum_t &rev1); - static int StartConflictEditor(CTGitPath* filepath); }; -- 2.11.4.GIT