private void txtFind_TextChanged(object sender, EventArgs e) { txtFind.BackColor = SystemColors.Window; if (txtFind.Text == string.Empty) { return; } if (_scintilla == null) { return; } int pos = Math.Min(_scintilla.CurrentPosition, _scintilla.AnchorPosition); ScintillaNET.FindReplaceDialog.CharacterRange r = _findReplace.Find(pos, _scintilla.TextLength, txtFind.Text, _findReplace.Window.GetSearchFlags()); if (r.cpMin == r.cpMax) { r = _findReplace.Find(0, pos, txtFind.Text, _findReplace.Window.GetSearchFlags()); } if (r.cpMin != r.cpMax) { _scintilla.SetSel(r.cpMin, r.cpMax); } else { txtFind.BackColor = Color.Tomato; } MoveFormAwayFromSelection(); }
private void findPrevious() { if (txtFind.Text == string.Empty) { return; } if (_scintilla == null) { return; } ScintillaNET.FindReplaceDialog.CharacterRange r = _findReplace.FindPrevious(txtFind.Text, true, _findReplace.Window.GetSearchFlags()); if (r.cpMin != r.cpMax) { _scintilla.SetSel(r.cpMin, r.cpMax); } MoveFormAwayFromSelection(); }