OSDN Git Service

Add "Ignore codepage differences" to quick options
authorTim Gerundt <tim@gerundt.de>
Mon, 7 Oct 2019 21:58:45 +0000 (23:58 +0200)
committerTakashi Sawanaka <sdottaka@users.sourceforge.net>
Mon, 7 Oct 2019 22:26:08 +0000 (07:26 +0900)
Src/MainFrm.cpp
Src/MainFrm.h
Src/Merge.rc
Src/resource.h

index e7a93b3..4e3ad11 100644 (file)
@@ -223,6 +223,8 @@ BEGIN_MESSAGE_MAP(CMainFrame, CMDIFrameWnd)
        ON_UPDATE_COMMAND_UI(IDC_DIFF_CASESENSITIVE, OnUpdateDiffCaseSensitive)
        ON_COMMAND(IDC_DIFF_IGNOREEOL, OnDiffIgnoreEOL)
        ON_UPDATE_COMMAND_UI(IDC_DIFF_IGNOREEOL, OnUpdateDiffIgnoreEOL)
+       ON_COMMAND(IDC_DIFF_IGNORECP, OnDiffIgnoreCP)
+       ON_UPDATE_COMMAND_UI(IDC_DIFF_IGNORECP, OnUpdateDiffIgnoreCP)
        ON_COMMAND(IDC_RECURS_CHECK, OnIncludeSubfolders)
        ON_UPDATE_COMMAND_UI(IDC_RECURS_CHECK, OnUpdateIncludeSubfolders)
        ON_COMMAND_RANGE(ID_COMPMETHOD_FULL_CONTENTS, ID_COMPMETHOD_SIZE, OnCompareMethod)
@@ -2329,6 +2331,18 @@ void CMainFrame::OnUpdateDiffIgnoreEOL(CCmdUI* pCmdUI)
        pCmdUI->Enable();
 }
 
+void CMainFrame::OnDiffIgnoreCP()
+{
+       GetOptionsMgr()->SaveOption(OPT_CMP_IGNORE_CODEPAGE, !GetOptionsMgr()->GetBool(OPT_CMP_IGNORE_CODEPAGE));
+       ApplyDiffOptions();
+}
+
+void CMainFrame::OnUpdateDiffIgnoreCP(CCmdUI* pCmdUI)
+{
+       pCmdUI->SetCheck(GetOptionsMgr()->GetBool(OPT_CMP_IGNORE_CODEPAGE));
+       pCmdUI->Enable();
+}
+
 void CMainFrame::OnIncludeSubfolders()
 {
        GetOptionsMgr()->SaveOption(OPT_CMP_INCLUDE_SUBDIRS, !GetOptionsMgr()->GetBool(OPT_CMP_INCLUDE_SUBDIRS));
index b4ccddb..0b23a9b 100644 (file)
@@ -289,6 +289,8 @@ protected:
        afx_msg void OnUpdateDiffCaseSensitive(CCmdUI* pCmdUI);
        afx_msg void OnDiffIgnoreEOL();
        afx_msg void OnUpdateDiffIgnoreEOL(CCmdUI* pCmdUI);
+       afx_msg void OnDiffIgnoreCP();
+       afx_msg void OnUpdateDiffIgnoreCP(CCmdUI* pCmdUI);
        afx_msg void OnIncludeSubfolders();
        afx_msg void OnUpdateIncludeSubfolders(CCmdUI* pCmdUI);
        afx_msg void OnCompareMethod(UINT nID);
index 24d61a5..5df5068 100644 (file)
@@ -786,6 +786,7 @@ BEGIN
         END\r
         MENUITEM "Case sensi&tive",             IDC_DIFF_CASESENSITIVE\r
         MENUITEM "Igno&re carriage return differences (Windows/Unix/Mac)", IDC_DIFF_IGNOREEOL\r
+        MENUITEM "Ignore codepage &differences", IDC_DIFF_IGNORECP\r
         MENUITEM SEPARATOR\r
         MENUITEM "&Include Subfolders",         IDC_RECURS_CHECK\r
         POPUP "&Compare method:"\r
index 03cf988..0a48199 100644 (file)
 #define IDC_USE_DIR_COMPARE_COLORS      1364\r
 #define IDC_PLUGIN_FILEFILTERS          1365\r
 #define IDC_PLUGIN_FILEFILTERS_DEFAULTS 1366\r
+#define IDC_DIFF_IGNORECP                              1377\r
 #define IDC_EDIT_WHOLE_WORD             8603\r
 #define IDC_EDIT_MATCH_CASE             8604\r
 #define IDC_EDIT_FINDTEXT               8605\r