diff options
-rw-r--r-- | plugingui/scrollbar.cc | 2 | ||||
-rw-r--r-- | plugingui/textedit.cc | 15 |
2 files changed, 5 insertions, 12 deletions
diff --git a/plugingui/scrollbar.cc b/plugingui/scrollbar.cc index 32db4a4..d7edd8f 100644 --- a/plugingui/scrollbar.cc +++ b/plugingui/scrollbar.cc @@ -135,7 +135,7 @@ void ScrollBar::repaintEvent(RepaintEvent* repaintEvent) int offset = width() + 2; int y_val1 = (currentValue * h) / maxValue; - int y_val2 = ((currentValue + rangeValue) * h) / maxValue; + int y_val2 = ((currentValue + rangeValue) * h) / maxValue - 1; p.drawFilledRectangle(2, y_val1 + offset, width() - 1, y_val2 + offset); } diff --git a/plugingui/textedit.cc b/plugingui/textedit.cc index c91b300..1a13530 100644 --- a/plugingui/textedit.cc +++ b/plugingui/textedit.cc @@ -79,17 +79,7 @@ void TextEdit::setText(const std::string& text) _text = text; preprocessText(); - - int ran = height() / font.textHeight(); - - DEBUG(textedit, "Setting range and max of scrollbar to '%d' and '%d'\n", - ran, (int)preprocessedtext.size()); - - scroll.setRange(ran); - scroll.setMaximum(preprocessedtext.size()); - redraw(); - textChangedNotifier(); } @@ -155,9 +145,12 @@ void TextEdit::preprocessText() void TextEdit::repaintEvent(RepaintEvent* repaintEvent) { Painter p(*this); - p.clear(); + // update values of scroll bar + scroll.setRange(height() / font.textHeight()); + scroll.setMaximum(preprocessedtext.size()); + int w = width(); int h = height(); if((w == 0) || (h == 0)) |