aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/tattoo/tattoo_user_interface.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sherlock/tattoo/tattoo_user_interface.h')
-rw-r--r--engines/sherlock/tattoo/tattoo_user_interface.h22
1 files changed, 18 insertions, 4 deletions
diff --git a/engines/sherlock/tattoo/tattoo_user_interface.h b/engines/sherlock/tattoo/tattoo_user_interface.h
index e2732c5ae2..2adbb4066e 100644
--- a/engines/sherlock/tattoo/tattoo_user_interface.h
+++ b/engines/sherlock/tattoo/tattoo_user_interface.h
@@ -26,6 +26,7 @@
#include "common/scummsys.h"
#include "sherlock/saveload.h"
#include "sherlock/user_interface.h"
+#include "sherlock/tattoo/widget_text.h"
#include "sherlock/tattoo/widget_tooltip.h"
#include "sherlock/tattoo/widget_verbs.h"
@@ -49,8 +50,11 @@ private:
SaveMode _fileMode;
int _exitZone;
int _scriptZone;
+ int _cAnimFramePause;
WidgetTooltip _tooltipWidget;
WidgetVerbs _verbsWidget;
+ WidgetText _textWidget;
+ WidgetBase *_widget;
private:
/**
* Draws designated areas of the screen that are meant to be grayed out using grayscale colors
@@ -118,6 +122,11 @@ private:
* Handle displaying the quit menu
*/
void doQuitMenu();
+
+ /**
+ * Free any active menu
+ */
+ void freeMenu();
public:
Common::Point _currentScroll, _targetScroll;
int _scrollSize, _scrollSpeed;
@@ -130,6 +139,7 @@ public:
Common::KeyState _keyState;
public:
TattooUserInterface(SherlockEngine *vm);
+ virtual ~TattooUserInterface() {}
/**
* Handles restoring any areas of the back buffer that were/are covered by UI elements
@@ -147,12 +157,18 @@ public:
void initScrollVars();
/**
- * Display the long description for an object stored in it's _examine field, in a window that
- * will be shown at the bottom of the screen
+ * Display the long description for an object in a window
*/
void lookAtObject();
/**
+ * Display the passed long description for an object. If the flag firstTime is set,
+ * the window will be opened to accomodate the text. Otherwise, the remaining text
+ * will be printed in an already open window
+ */
+ void printObjectDesc(const Common::String &str, bool firstTime);
+
+ /**
* Handles displaying the journal
*/
void doJournal();
@@ -172,8 +188,6 @@ public:
*/
void pickUpObject(int objNum);
public:
- virtual ~TattooUserInterface() {}
-
/**
* Main input handler for the user interface
*/