From 37b32dfda77f416dcfb44f870aba9782717d4028 Mon Sep 17 00:00:00 2001 From: Sven Strickroth Date: Sun, 20 Nov 2016 07:51:58 +0100 Subject: [PATCH] FileDiffDlg: Make diff options button a menu button Signed-off-by: Sven Strickroth --- src/Resources/TortoiseProcENG.rc | 2 +- src/TortoiseProc/FileDiffDlg.cpp | 5 +++++ src/TortoiseProc/FileDiffDlg.h | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/Resources/TortoiseProcENG.rc b/src/Resources/TortoiseProcENG.rc index 9db6cd220..f7c458c2e 100644 --- a/src/Resources/TortoiseProcENG.rc +++ b/src/Resources/TortoiseProcENG.rc @@ -783,7 +783,7 @@ CAPTION "Changed Files" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN LTEXT "Difference between",IDC_DIFFSTATIC1,7,7,125,8 - PUSHBUTTON "Diff Options",IDC_DIFFOPTION,132,4,68,14 + PUSHBUTTON "Diff Options",IDC_DIFFOPTION,132,4,68,14,BS_CHECKBOX PUSHBUTTON "",IDC_SWITCHLEFTRIGHT,262,4,21,14,BS_ICON PUSHBUTTON "Show log",IDC_LOG,203,4,52,14 GROUPBOX "Version 1 (Base)",IDC_REV1GROUP,6,16,288,45 diff --git a/src/TortoiseProc/FileDiffDlg.cpp b/src/TortoiseProc/FileDiffDlg.cpp index 60bd54c1c..933d6c81f 100644 --- a/src/TortoiseProc/FileDiffDlg.cpp +++ b/src/TortoiseProc/FileDiffDlg.cpp @@ -85,6 +85,7 @@ void CFileDiffDlg::DoDataExchange(CDataExchange* pDX) DDX_Control(pDX, IDC_FILTER, m_cFilter); DDX_Control(pDX, IDC_REV1EDIT, m_ctrRev1Edit); DDX_Control(pDX, IDC_REV2EDIT, m_ctrRev2Edit); + DDX_Control(pDX, IDC_DIFFOPTION, m_cDiffOptionsBtn); } @@ -315,6 +316,8 @@ BOOL CFileDiffDlg::OnInitDialog() if(m_rev2.m_CommitHash.IsEmpty()) m_SwitchButton.EnableWindow(FALSE); + m_cDiffOptionsBtn.m_bAlwaysShowArrow = true; + KillTimer(IDT_INPUT); return FALSE; } @@ -1321,6 +1324,7 @@ void CFileDiffDlg::OnBnClickedDiffoption() CMenu popup; if (popup.CreatePopupMenu()) { + m_cDiffOptionsBtn.SetCheck(BST_CHECKED); AppendMenuChecked(popup, IDS_DIFFOPTION_IGNORESPACEATEOL, DIFFOPTION_IGNORESPACEATEOL, m_bIgnoreSpaceAtEol); AppendMenuChecked(popup, IDS_DIFFOPTION_IGNORESPACECHANGE, DIFFOPTION_IGNORESPACECHANGE, m_bIgnoreSpaceChange); AppendMenuChecked(popup, IDS_DIFFOPTION_IGNOREALLSPACE, DIFFOPTION_IGNOREALLSPACE, m_bIgnoreAllSpace); @@ -1352,6 +1356,7 @@ void CFileDiffDlg::OnBnClickedDiffoption() break; } UpdateData(FALSE); + m_cDiffOptionsBtn.SetCheck((m_bIgnoreSpaceAtEol || m_bIgnoreSpaceChange || m_bIgnoreAllSpace || m_bIgnoreBlankLines) ? BST_CHECKED : BST_UNCHECKED); } } diff --git a/src/TortoiseProc/FileDiffDlg.h b/src/TortoiseProc/FileDiffDlg.h index e793c0dee..c69c57253 100644 --- a/src/TortoiseProc/FileDiffDlg.h +++ b/src/TortoiseProc/FileDiffDlg.h @@ -134,6 +134,8 @@ private: CMenuButton m_cRev2Btn; CFilterEdit m_cFilter; + CMenuButton m_cDiffOptionsBtn; + CMFCButton m_SwitchButton; CColors m_colors; CHintCtrl m_cFileList; -- 2.11.4.GIT