aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2015-07-20 19:56:01 -0400
committerPaul Gilbert2015-07-20 19:56:01 -0400
commit39930a25c3359955346c487ed59374b193273b38 (patch)
treebc6b90754209baecb8d74dfb973b7a70e7692dd7
parente4975cef852222ac663464829ec2a64a7920fdbb (diff)
downloadscummvm-rg350-39930a25c3359955346c487ed59374b193273b38.tar.gz
scummvm-rg350-39930a25c3359955346c487ed59374b193273b38.tar.bz2
scummvm-rg350-39930a25c3359955346c487ed59374b193273b38.zip
SHERLOCK: RT: Implement WidgetLab displayLabNames
-rw-r--r--engines/sherlock/tattoo/widget_lab.cpp21
-rw-r--r--engines/sherlock/tattoo/widget_lab.h3
2 files changed, 23 insertions, 1 deletions
diff --git a/engines/sherlock/tattoo/widget_lab.cpp b/engines/sherlock/tattoo/widget_lab.cpp
index dfa470fbb8..99f0e87fab 100644
--- a/engines/sherlock/tattoo/widget_lab.cpp
+++ b/engines/sherlock/tattoo/widget_lab.cpp
@@ -21,6 +21,7 @@
*/
#include "sherlock/tattoo/widget_lab.h"
+#include "sherlock/tattoo/tattoo_fixed_text.h"
#include "sherlock/tattoo/tattoo_user_interface.h"
#include "sherlock/tattoo/tattoo.h"
@@ -157,7 +158,27 @@ void WidgetLab::handleEvents() {
}
void WidgetLab::displayLabNames() {
+ TattooUserInterface &ui = *(TattooUserInterface *)_vm->_ui;
+
+ // See if thay are pointing at a different object and we need to change the tooltip
+ if (ui._bgFound != ui._oldBgFound) {
+ // See if there is a new object to be displayed
+ if (ui._bgFound == -1) {
+ ui._tooltipWidget.setText("");
+ } else {
+ Common::String str = Common::String::format("%s %s %s %s", FIXED(Use), _labObject->_description.c_str(),
+ FIXED(With), ui._bgShape->_description);
+
+ // Make sure that the Object has a name
+ if (!ui._bgShape->_description.empty() && !ui._bgShape->_description.hasPrefix(" ")) {
+ ui._tooltipWidget.setText(str);
+ } else {
+ ui._tooltipWidget.setText("");
+ }
+ }
+ }
+ ui._oldArrowZone = ui._arrowZone;
}
} // End of namespace Tattoo
diff --git a/engines/sherlock/tattoo/widget_lab.h b/engines/sherlock/tattoo/widget_lab.h
index df2ff34c63..80ed0f9da9 100644
--- a/engines/sherlock/tattoo/widget_lab.h
+++ b/engines/sherlock/tattoo/widget_lab.h
@@ -38,7 +38,8 @@ private:
Object *_labObject;
/**
- * Display tooltips of using one lab item on another
+ * Display tooltips of an object being dragged along with any object the dragged
+ * object is currently over
*/
void displayLabNames();
public: