Changeset 218eb60d7e2e…
Parent b2bbf1aee6bb…
by
Changes to 3 files · Browse files at 218eb60d7e2e Showing diff from parent b2bbf1aee6bb Diff from another changeset...
@@ -210,10 +210,16 @@ const int KeyShortcutListCount = sizeof(KeyShortcutList) / sizeof(CKeyShortcut);
// Message displayed if the user tries to delete the internal .hg directory
-const LPCTSTR DeleteHgMessage = "The folder you are attempting to delete, .hg, is used "
- "internally by Mercurial to store the history of this repository. If you delete "
- "this folder, your code will no longer be treated as a source code control "
- "repository by Mercurial. If you do no have a backup copy of the repository "
- "elsewhere, its history will be lost permanently. Are you sure that you want to "
- "delete the .hg folder?";
-const LPCTSTR DeleteHgTitle = "TortoiseHg Warning";
+const LPCWSTR DeleteHgMessage = L"The folder you are attempting to delete, .hg, is used "
+ L"internally by Mercurial to store the history of this repository. If you delete "
+ L"this folder, your code will no longer be treated as a source code control "
+ L"repository by Mercurial. If you do no have a backup copy of the repository "
+ L"elsewhere, its history will be lost permanently. Are you sure that you want to "
+ L"delete the .hg folder?";
+const LPCWSTR DeleteHgTitle = L"TortoiseHg Warning";
+
+// Message displayed if the user tries to delete the internal .kbf directory
+const LPCWSTR DeleteKbfMessage = L"The folder you are attempting to delete, .kbf, is "
+ L"used internally by the kbfiles extension to Mercurial. Deleting it will corrupt "
+ L"your repository. Are you sure that you want to delete the .kbf folder?";
+const LPCWSTR DeleteKbfTitle = L"TortoiseHg Warning";
|
@@ -52,5 +52,7 @@ extern const int KeyShortcutListCount;
// Warning messages displayed by the copy hook
-extern const LPCTSTR DeleteHgMessage;
-extern const LPCTSTR DeleteHgTitle;
+extern const LPCWSTR DeleteHgMessage;
+extern const LPCWSTR DeleteHgTitle;
+extern const LPCWSTR DeleteKbfMessage;
+extern const LPCWSTR DeleteKbfTitle;
|
@@ -30,10 +30,28 @@ if (wFunc != FO_DELETE || !(dwSrcAttribs & FILE_ATTRIBUTE_DIRECTORY)) return IDYES;
CString strDirName = pszSrcFile;
- if (strDirName.Right(4) != "\\.hg") return IDYES;
+ LPCTSTR lpszMsgName = NULL;
+ CStringW strMenuText;
+ CStringW strHelpText;
+ if (strDirName.Right(4) == "\\.hg")
+ {
+ lpszMsgName = "hgwarning";
+ strMenuText = DeleteHgTitle;
+ strHelpText = DeleteHgMessage;
+ }
+ else if (strDirName.Right(5) == "\\.kbf")
+ {
+ strDirName.Truncate(strDirName.GetLength() - 5);
+ strDirName += "\\.hg\\kilnbfiles\\dirstate";
+ if (::PathFileExists(strDirName))
+ {
+ lpszMsgName = "kbfwarning";
+ strMenuText = DeleteKbfTitle;
+ strHelpText = DeleteKbfMessage;
+ }
+ }
- CStringW strMenuText = DeleteHgTitle;
- CStringW strHelpText = DeleteHgMessage;
+ if (lpszMsgName == NULL) return IDYES;
// Attempt to load localized message and title strings if they exist.
CString strLang;
@@ -42,7 +60,7 @@ {
CStringW strMenuText2;
CStringW strHelpText2;
- GetCMenuTranslation(strLang, "hgwarning", strMenuText, strHelpText);
+ GetCMenuTranslation(strLang, lpszMsgName, strMenuText, strHelpText);
if (!strMenuText2.IsEmpty()) strMenuText = strMenuText2;
if (!strHelpText2.IsEmpty()) strHelpText = strHelpText2;
}
|
Loading...