diff options
author | nyamatongwe <devnull@localhost> | 2005-10-29 23:48:10 +0000 |
---|---|---|
committer | nyamatongwe <devnull@localhost> | 2005-10-29 23:48:10 +0000 |
commit | f12afccae7dfa0e52ac1954a2fcea64afaa7a248 (patch) | |
tree | 4d46734123172bf60e0369edfae8130d5baa93db /src/Editor.cxx | |
parent | 2b5d958fb2427d2fc53cf1da4e048daa04d98507 (diff) | |
download | scintilla-mirror-f12afccae7dfa0e52ac1954a2fcea64afaa7a248.tar.gz |
Only redraw line affected when changing markers.
Diffstat (limited to 'src/Editor.cxx')
-rw-r--r-- | src/Editor.cxx | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx index 2b100fd49..8ebdbd9ae 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -875,13 +875,19 @@ void Editor::Redraw() { //wMain.InvalidateAll(); } -void Editor::RedrawSelMargin() { +void Editor::RedrawSelMargin(int line) { if (!AbandonPaint()) { if (vs.maskInLine) { Redraw(); } else { PRectangle rcSelMargin = GetClientRectangle(); rcSelMargin.right = vs.fixedColumnWidth; + if (line != -1) { + int position = pdoc->LineStart(line); + PRectangle rcLine = RectangleFromRange(position, position); + rcSelMargin.top = rcLine.top; + rcSelMargin.bottom = rcLine.bottom; + } wMain.InvalidateRectangle(rcSelMargin); } } @@ -3742,7 +3748,7 @@ void Editor::NotifyModified(Document*, DocModification mh, void *) { if (mh.modificationType & SC_MOD_CHANGEMARKER) { if (paintState == notPainting) { - RedrawSelMargin(); + RedrawSelMargin(mh.line); } } |