OSDN Git Service

Add CMergeApp::GetLangName() function
authorTakashi Sawanaka <sdottaka@users.sourceforge.net>
Sun, 25 Jul 2021 23:28:48 +0000 (08:28 +0900)
committerTakashi Sawanaka <sdottaka@users.sourceforge.net>
Sun, 25 Jul 2021 23:28:48 +0000 (08:28 +0900)
Src/Constants.h
Src/MainFrm.cpp
Src/Merge.cpp
Src/Merge.h

index 6728df3..a2bebc1 100644 (file)
@@ -30,7 +30,7 @@ const TCHAR DocsPath[] = _T("Docs/WinMerge%s.chm");
 const TCHAR ContributorsPath[] = _T("contributors.txt");
 
 /** @brief Release notes in HTML format. */
-const TCHAR RelNotes[] = _T("\\Docs\\ReleaseNotes.html");
+const TCHAR RelNotes[] = _T("\\Docs\\ReleaseNotes%s.html");
 
 /** @brief GPL Licence local file name. */
 const TCHAR LicenseFile[] = _T("Copying");
index 38108c5..d18a693 100644 (file)
@@ -2460,7 +2460,9 @@ bool CMainFrame::AskCloseConfirmation()
  */
 void CMainFrame::OnHelpReleasenotes()
 {
-       const String sPath = paths::ConcatPath(env::GetProgPath(), RelNotes);
+       String sPath = paths::ConcatPath(env::GetProgPath(),strutils::format(RelNotes, theApp.GetLangName()));
+       if (paths::DoesPathExist(sPath) != paths::IS_EXISTING_FILE)
+               sPath = paths::ConcatPath(env::GetProgPath(), strutils::format(RelNotes, _T("")));
        shell::Open(sPath.c_str());
 }
 
index 910cdce..e478598 100644 (file)
@@ -891,10 +891,7 @@ void CMergeApp::OpenFileToExternalEditor(const String& file, int nLineNumber/* =
  */
 void CMergeApp::ShowHelp(LPCTSTR helpLocation /*= nullptr*/)
 {
-       String name, ext;
-       LANGID LangId = GetLangId();
-       paths::SplitFilename(m_pLangDlg->GetFileName(LangId), nullptr, &name, &ext);
-       String sPath = paths::ConcatPath(env::GetProgPath(), strutils::format(DocsPath, name.c_str()));
+       String sPath = paths::ConcatPath(env::GetProgPath(), strutils::format(DocsPath, GetLangName()));
        if (paths::DoesPathExist(sPath) != paths::IS_EXISTING_FILE)
                sPath = paths::ConcatPath(env::GetProgPath(), strutils::format(DocsPath, _T("")));
        if (helpLocation == nullptr)
@@ -1279,6 +1276,13 @@ WORD CMergeApp::GetLangId() const
        return m_pLangDlg->GetLangId();
 }
 
+String CMergeApp::GetLangName() const
+{
+       String name, ext;
+       paths::SplitFilename(theApp.m_pLangDlg->GetFileName(theApp.GetLangId()), nullptr, &name, &ext);
+       return name;
+}
+
 /**
  * @brief Lang aware version of CStatusBar::SetIndicators()
  */
index 5fca640..1b49b52 100644 (file)
@@ -70,6 +70,7 @@ public:
        std::unique_ptr<SubstitutionFiltersList> m_pSubstitutionFiltersList;
 
        WORD GetLangId() const;
+       String GetLangName() const;
        void SetIndicators(CStatusBar &, const UINT *, int) const;
        void TranslateMenu(HMENU) const;
        void TranslateDialog(HWND) const;