{
int nID;
int nHelpID;
+ const TCHAR* key;
int type;
} MessageBoxes[] =
{
// folder compare window
- { IDS_CREATE_PAIR_FOLDER, IDS_CREATE_PAIR_FOLDER, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
+ { IDS_CREATE_PAIR_FOLDER, IDS_CREATE_PAIR_FOLDER, nullptr, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
+ { IDS_CONFIRM_SINGLE_COPY, 0, _T("FolderCopyConfirmDlgDontAskAgain"), MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
// file compare window
- { IDS_COMPARE_LARGE_FILES, IDS_COMPARE_LARGE_FILES, MB_YESNOCANCEL | MB_ICONQUESTION | MB_DONT_ASK_AGAIN},
- { IDS_FILESSAME, IDS_FILESSAME, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN},
- { IDS_FILE_TO_ITSELF, IDS_FILE_TO_ITSELF, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN},
- { IDS_NUM_REPLACED, IDS_NUM_REPLACED, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN },
- { IDS_SAVEREADONLY_MULTI, IDS_SAVEREADONLY_MULTI, MB_YESNOCANCEL | MB_ICONWARNING | MB_DEFBUTTON3 | MB_DONT_ASK_AGAIN | MB_YES_TO_ALL },
- { IDS_SAVEREADONLY_FMT, IDS_SAVEREADONLY_FMT, MB_YESNOCANCEL | MB_ICONWARNING | MB_DEFBUTTON3 | MB_DONT_ASK_AGAIN | MB_YES_TO_ALL },
- { IDS_MERGE_MODE, IDS_MERGE_MODE, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN },
- { IDS_FILECHANGED_RESCAN, IDS_FILECHANGED_RESCAN, MB_YESNO | MB_ICONWARNING },
- { IDS_BACKUP_FAILED_PROMPT, IDS_BACKUP_FAILED_PROMPT, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
- { IDS_SUGGEST_IGNOREEOL, IDS_SUGGEST_IGNOREEOL, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
- { IDS_MOVE_TO_NEXTFILE, IDS_MOVE_TO_NEXTFILE, MB_YESNO | MB_DONT_ASK_AGAIN },
- { IDS_MOVE_TO_PREVFILE, IDS_MOVE_TO_PREVFILE, MB_YESNO | MB_DONT_ASK_AGAIN },
- { IDS_MOVE_TO_FIRSTFILE, IDS_MOVE_TO_FIRSTFILE, MB_YESNO | MB_DONT_ASK_AGAIN },
- { IDS_MOVE_TO_LASTFILE, IDS_MOVE_TO_LASTFILE, MB_YESNO | MB_DONT_ASK_AGAIN },
- { IDS_MOVE_TO_NEXTPAGE, IDS_MOVE_TO_NEXTPAGE, MB_YESNO | MB_DONT_ASK_AGAIN },
- { IDS_MOVE_TO_PREVPAGE, IDS_MOVE_TO_PREVPAGE, MB_YESNO | MB_DONT_ASK_AGAIN },
+ { IDS_COMPARE_LARGE_FILES, 0, _T("CompareLargeFiles"), MB_YESNOCANCEL | MB_ICONQUESTION | MB_DONT_ASK_AGAIN},
+ { IDS_FILESSAME, IDS_FILESSAME, nullptr, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN},
+ { IDS_FILE_TO_ITSELF, IDS_FILE_TO_ITSELF, nullptr, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN},
+ { IDS_NUM_REPLACED, IDS_NUM_REPLACED, nullptr, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN },
+ { IDS_SAVEREADONLY_MULTI, IDS_SAVEREADONLY_MULTI, nullptr, MB_YESNOCANCEL | MB_ICONWARNING | MB_DEFBUTTON3 | MB_DONT_ASK_AGAIN | MB_YES_TO_ALL },
+ { IDS_SAVEREADONLY_FMT, IDS_SAVEREADONLY_FMT, nullptr, MB_YESNOCANCEL | MB_ICONWARNING | MB_DEFBUTTON3 | MB_DONT_ASK_AGAIN | MB_YES_TO_ALL },
+ { IDS_MERGE_MODE, IDS_MERGE_MODE, nullptr, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN },
+ { IDS_FILECHANGED_RESCAN, IDS_FILECHANGED_RESCAN, nullptr, MB_YESNO | MB_ICONWARNING },
+ { IDS_BACKUP_FAILED_PROMPT, IDS_BACKUP_FAILED_PROMPT, nullptr, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
+ { IDS_SUGGEST_IGNOREEOL, IDS_SUGGEST_IGNOREEOL, nullptr, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
+ { IDS_MOVE_TO_NEXTFILE, IDS_MOVE_TO_NEXTFILE, nullptr, MB_YESNO | MB_DONT_ASK_AGAIN },
+ { IDS_MOVE_TO_PREVFILE, IDS_MOVE_TO_PREVFILE, nullptr, MB_YESNO | MB_DONT_ASK_AGAIN },
+ { IDS_MOVE_TO_FIRSTFILE, IDS_MOVE_TO_FIRSTFILE, nullptr, MB_YESNO | MB_DONT_ASK_AGAIN },
+ { IDS_MOVE_TO_LASTFILE, IDS_MOVE_TO_LASTFILE, nullptr, MB_YESNO | MB_DONT_ASK_AGAIN },
+ { IDS_MOVE_TO_NEXTPAGE, IDS_MOVE_TO_NEXTPAGE, nullptr, MB_YESNO | MB_DONT_ASK_AGAIN },
+ { IDS_MOVE_TO_PREVPAGE, IDS_MOVE_TO_PREVPAGE, nullptr, MB_YESNO | MB_DONT_ASK_AGAIN },
// report dialog
- { IDS_REPORT_FILEOVERWRITE, IDS_REPORT_FILEOVERWRITE, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
+ { IDS_REPORT_FILEOVERWRITE, IDS_REPORT_FILEOVERWRITE, nullptr, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
// patch dialog
- { IDS_CANNOT_CREATE_BINARYPATCH, IDS_CANNOT_CREATE_BINARYPATCH, MB_ICONWARNING | MB_DONT_DISPLAY_AGAIN },
- { IDS_DIFF_FILEOVERWRITE, IDS_DIFF_FILEOVERWRITE, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
- { IDS_DIFF_SUCCEEDED, IDS_DIFF_SUCCEEDED, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN },
+ { IDS_CANNOT_CREATE_BINARYPATCH, IDS_CANNOT_CREATE_BINARYPATCH, nullptr, MB_ICONWARNING | MB_DONT_DISPLAY_AGAIN },
+ { IDS_DIFF_FILEOVERWRITE, IDS_DIFF_FILEOVERWRITE, nullptr, MB_YESNO | MB_ICONWARNING | MB_DONT_ASK_AGAIN },
+ { IDS_DIFF_SUCCEEDED, IDS_DIFF_SUCCEEDED, nullptr, MB_ICONINFORMATION | MB_DONT_DISPLAY_AGAIN },
};
static std::vector<String> Answers;
m_answers.clear();
for (unsigned i = 0; i < static_cast<unsigned>(std::size(MessageBoxes)); i++)
{
- CString key = CMessageBoxDialog::GenerateRegistryKey(
+ CString key = (MessageBoxes[i].key != nullptr) ? MessageBoxes[i].key : CMessageBoxDialog::GenerateRegistryKey(
MessageBoxes[i].nID, MessageBoxes[i].nHelpID);
m_answers.push_back(AfxGetApp()->GetProfileInt(_T("MessageBoxes"), key, -1));
}
CMessageBoxDialog::ResetMessageBoxes();
for (unsigned i = 0; i < static_cast<unsigned>(std::size(MessageBoxes)); i++)
{
- CString key = CMessageBoxDialog::GenerateRegistryKey(
+ CString key = (MessageBoxes[i].key != nullptr) ? MessageBoxes[i].key :
+ CMessageBoxDialog::GenerateRegistryKey(
MessageBoxes[i].nID, MessageBoxes[i].nHelpID);
int ans = m_answers[i];
if (ans >= IDOK && ans <= IDCONTINUE)