Merge pull request #7 from andreas-jonsson/find_ampersands

Fix ampersands in find dialog status bar.
This commit is contained in:
Don HO 2015-05-02 11:49:36 +02:00
commit 2fe9845dbe
3 changed files with 12 additions and 1 deletions

View File

@ -707,3 +707,13 @@ generic_string stringToUpper(generic_string strToConvert)
return strToConvert;
}
generic_string stringReplace(generic_string subject, const generic_string& search, const generic_string& replace)
{
size_t pos = 0;
while ((pos = subject.find(search, pos)) != std::string::npos)
{
subject.replace(pos, search.length(), replace);
pos += replace.length();
}
return subject;
}

View File

@ -187,5 +187,6 @@ generic_string PathRemoveFileSpec(generic_string & path);
generic_string PathAppend(generic_string &strDest, const generic_string & str2append);
COLORREF getCtrlBgColor(HWND hWnd);
generic_string stringToUpper(generic_string strToConvert);
generic_string stringReplace(generic_string subject, const generic_string& search, const generic_string& replace);
#endif //M30_IDE_COMMUN_H

View File

@ -1275,7 +1275,7 @@ bool FindReplaceDlg::processFindNext(const TCHAR *txt2find, const FindOption *op
if (NotIncremental == pOptions->_incrementalType) //incremental search doesnt trigger messages
{
generic_string msg = TEXT("Find: Can't find the text \"");
msg += txt2find;
msg += stringReplace(txt2find, TEXT("&"), TEXT("&&"));
msg += TEXT("\"");
setStatusbarMessage(msg, FSNotFound);