From 1162d2fbc725cc5e1489a96869f72670c2211424 Mon Sep 17 00:00:00 2001 From: Takashi Sawanaka Date: Wed, 2 Oct 2019 08:00:45 +0900 Subject: [PATCH] Fix GitHub issue #191: "Recompare as" menu option doesn't follow current choice --- Src/MergeDoc.cpp | 18 ++++++++++++++++-- Src/MergeDoc.h | 1 + 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/Src/MergeDoc.cpp b/Src/MergeDoc.cpp index b3764ac94..5212e8899 100644 --- a/Src/MergeDoc.cpp +++ b/Src/MergeDoc.cpp @@ -116,6 +116,7 @@ BEGIN_MESSAGE_MAP(CMergeDoc, CDocument) ON_BN_CLICKED(IDC_HEXVIEW, OnBnClickedHexView) ON_COMMAND(IDOK, OnOK) ON_COMMAND(ID_MERGE_COMPARE_XML, OnFileRecompareAsXML) + ON_UPDATE_COMMAND_UI(ID_MERGE_COMPARE_XML, OnUpdateFileRecompareAsXML) ON_COMMAND_RANGE(ID_MERGE_COMPARE_HEX, ID_MERGE_COMPARE_IMAGE, OnFileRecompareAs) //}}AFX_MSG_MAP END_MESSAGE_MAP() @@ -3155,11 +3156,24 @@ void CMergeDoc::OnOK() void CMergeDoc::OnFileRecompareAsXML() { - PackingInfo infoUnpacker(PLUGIN_BUILTIN_XML); - SetUnpacker(&infoUnpacker); + if (m_pInfoUnpacker->m_PluginOrPredifferMode == PLUGIN_BUILTIN_XML) + { + PackingInfo infoUnpacker; + SetUnpacker(&infoUnpacker); + } + else + { + PackingInfo infoUnpacker(PLUGIN_BUILTIN_XML); + SetUnpacker(&infoUnpacker); + } OnFileReload(); } +void CMergeDoc::OnUpdateFileRecompareAsXML(CCmdUI *pCmdUI) +{ + pCmdUI->SetCheck(m_pInfoUnpacker->m_PluginOrPredifferMode == PLUGIN_BUILTIN_XML); +} + void CMergeDoc::OnFileRecompareAs(UINT nID) { DWORD dwFlags[3] = { 0 }; diff --git a/Src/MergeDoc.h b/Src/MergeDoc.h index 765e2b7e0..c018a9548 100644 --- a/Src/MergeDoc.h +++ b/Src/MergeDoc.h @@ -379,6 +379,7 @@ protected: afx_msg void OnBnClickedHexView(); afx_msg void OnOK(); afx_msg void OnFileRecompareAsXML(); + afx_msg void OnUpdateFileRecompareAsXML(CCmdUI* pCmdUI); afx_msg void OnFileRecompareAs(UINT nID); //}}AFX_MSG DECLARE_MESSAGE_MAP() -- 2.11.0