diff options
author | Paul Gilbert | 2015-07-26 20:58:26 -0400 |
---|---|---|
committer | Paul Gilbert | 2015-07-26 20:58:26 -0400 |
commit | 20a067a66266ab63270b65994a8ab35ff398c7d2 (patch) | |
tree | 9aafe97bb792c09e830703548d41cefb7bd0f656 /engines/sherlock | |
parent | 8a0725238e6d4b9701139f53e47ce086a0fdc3db (diff) | |
download | scummvm-rg350-20a067a66266ab63270b65994a8ab35ff398c7d2.tar.gz scummvm-rg350-20a067a66266ab63270b65994a8ab35ff398c7d2.tar.bz2 scummvm-rg350-20a067a66266ab63270b65994a8ab35ff398c7d2.zip |
SHERLOCK: RT: Fix scrolling talk window
Diffstat (limited to 'engines/sherlock')
-rw-r--r-- | engines/sherlock/tattoo/widget_talk.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/engines/sherlock/tattoo/widget_talk.cpp b/engines/sherlock/tattoo/widget_talk.cpp index bc2f8339d2..d33da658ab 100644 --- a/engines/sherlock/tattoo/widget_talk.cpp +++ b/engines/sherlock/tattoo/widget_talk.cpp @@ -128,7 +128,7 @@ void WidgetTalk::handleEvents() { // Only redraw the window if the the scrollbar position has changed if (ui._scrollHighlight != oldHighlight || oldScrollIndex != _talkScrollIndex) - render(HL_SCROLLBAR_ONLY); + render(HL_NO_HIGHLIGHTING); // Flag if they started pressing outside of the window if (events._firstPress && !_bounds.contains(mousePos)) @@ -385,6 +385,9 @@ void WidgetTalk::render(Highlight highlightMode) { for (uint idx = _talkScrollIndex; idx < _statementLines.size() && yp < (_bounds.height() - _surface.fontHeight()); ++idx) { if (highlightMode == HL_NO_HIGHLIGHTING || _statementLines[idx]._num == _selector || _statementLines[idx]._num == _oldSelector) { + // Erase the line contents + _surface.fillRect(Common::Rect(3, yp, _surface.w() - BUTTON_SIZE - 3, yp + _surface.fontHeight()), TRANSPARENCY); + // Different coloring based on whether the option has been previously chosen or not color = (!talk._talkHistory[talk._converseNum][_statementLines[idx]._num]) ? INFO_TOP : INFO_BOTTOM; |