void TextDisplay::HideCaret () { if (Interactor::ValidCanvas(canvas) && caretline >= topline && caretline <= bottomline ) { TextLine* l = Line(caretline, true); l->Draw(this, caretline, caretindex-1, caretindex); } }
void TextDisplay::Redraw (IntCoord l, IntCoord b, IntCoord r, IntCoord t) { if (canvas != nil) { int first = LineNumber(t); int last = LineNumber(b); for (int i = first; i <= last; ++i) { int begin = LineIndex(i, l, false); int end = LineIndex(i, r, false); TextLine* line = Line(i, false); if (line != nil) { line->Draw(this, i, begin, end); } else { IntCoord base = Base(i); IntCoord top = Top(i); painter->ClearRect( canvas, l, Math::max(base, b), r, Math::min(top, t) ); } if (caretline == i && caretindex >= begin && caretindex <= end) { ShowCaret(); } } } }
void TextDisplay::HideCaret () { if (canvas != nil && caretline >= topline && caretline <= bottomline) { TextLine* l = Line(caretline, true); l->Draw(this, caretline, caretindex-1, caretindex); } }