aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/tattoo/tattoo_scene.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2015-07-31 17:32:38 -0400
committerPaul Gilbert2015-07-31 17:32:38 -0400
commit4cc2bcabe1e59a2074a5aef466911ae1bbbf351f (patch)
tree99a6e7614030c2f7839b2b1bb92062b1212c5cba /engines/sherlock/tattoo/tattoo_scene.cpp
parent803969b928f85254e4518c44f20455ab0fdd7065 (diff)
downloadscummvm-rg350-4cc2bcabe1e59a2074a5aef466911ae1bbbf351f.tar.gz
scummvm-rg350-4cc2bcabe1e59a2074a5aef466911ae1bbbf351f.tar.bz2
scummvm-rg350-4cc2bcabe1e59a2074a5aef466911ae1bbbf351f.zip
SHERLOCK: RT: Fix inventory tooltips when in a scene with a mask
ScummVM simplifies tooltip handling by drawing tooltips directly to the screen surface. This works well in most cases, but in mask scenes, the screen is recopied at the end of rendering to apply the mask overlay, so the tooltip needs to be redrawn after again in order to be seen
Diffstat (limited to 'engines/sherlock/tattoo/tattoo_scene.cpp')
-rw-r--r--engines/sherlock/tattoo/tattoo_scene.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/sherlock/tattoo/tattoo_scene.cpp b/engines/sherlock/tattoo/tattoo_scene.cpp
index f851a0ac05..13206f0dac 100644
--- a/engines/sherlock/tattoo/tattoo_scene.cpp
+++ b/engines/sherlock/tattoo/tattoo_scene.cpp
@@ -377,9 +377,14 @@ void TattooScene::doBgAnim() {
_doBgAnimDone = true;
ui._drawMenu = false;
- // Handle drawing the text tooltip if necessary
+ // Handle drawing tooltips
if (ui._menuMode == STD_MODE || ui._menuMode == LAB_MODE)
ui._tooltipWidget.draw();
+ if (!ui._postRenderWidgets.empty()) {
+ for (WidgetList::iterator i = ui._postRenderWidgets.begin(); i != ui._postRenderWidgets.end(); ++i)
+ (*i)->draw();
+ ui._postRenderWidgets.clear();
+ }
if (!vm._fastMode)
events.wait(3);