Files
Work/m68hc11/Editfnd.cpp
2024-08-07 09:16:27 -04:00

52 lines
931 B
C++

#include <m68hc11/editfnd.hpp>
EditFind::EditFind(void)
{
}
EditFind::~EditFind()
{
}
// virtuals
void EditFind::init(void)
{
CharRange searchRange;
searchRange.posMin(0);
searchRange.posMax(0);
mFindTextEx.searchRange(searchRange);
}
void EditFind::leaveEdit(const String &strText)
{
findNext();
}
void EditFind::find(void)
{
findNext();
}
void EditFind::findNext(void)
{
String currText;
getText(currText);
if(currText.isNull())return;
if(!(currText==lastSearchText()))lastFindIndex(-1);
mFindTextEx.strFind(currText);
if(!mFindTextEx.searchRange().posMin()&&!mFindTextEx.searchRange().posMax())mFindTextEx.searchRange(CharRange(0,-1));
else
{
CharRange searchRange(mFindTextEx.foundRange());
searchRange.posMin(searchRange.posMax());
searchRange.posMax(-1);
mFindTextEx.searchRange(searchRange);
}
// mRichEditControl->setFocus();
mRichEditControl->findText(mFindTextEx);
// setFocus();
}