public void ExtractKeyword(string keyword, Brush brush)
{
var marks = new List<Mark>();
var txt = _iEditor.GetText();
int currentIndex = 0;
while (true)
{
currentIndex = txt.IndexOf(keyword, currentIndex);
if (currentIndex == -1)
{
break;
}
int tailIndex = currentIndex + keyword.Length - 1;
marks.Add(new KeywordMark()
{
Brush = brush,
HeadCharIndex = GetHeadIndex(currentIndex, txt),
TailCharIndex = GetTailIndex(tailIndex, txt),
Parent = null,
keyword = keyword
});
currentIndex = tailIndex + 1;
if (currentIndex >= txt.Length)
{
break;
}
}
ShowMarks(marks, _iEditor.GetText());
}