aboutsummaryrefslogtreecommitdiff
path: root/engines/sherlock/user_interface.h
diff options
context:
space:
mode:
authorPaul Gilbert2015-05-28 08:31:53 -0400
committerPaul Gilbert2015-05-28 08:31:53 -0400
commitf4902b516ec8486338b777354809171112671e5b (patch)
tree2d286bb33818babf3eade15e5babec8570ba3e7e /engines/sherlock/user_interface.h
parent45b4989b55a043a9d2f1806db375d9f91476ed89 (diff)
downloadscummvm-rg350-f4902b516ec8486338b777354809171112671e5b.tar.gz
scummvm-rg350-f4902b516ec8486338b777354809171112671e5b.tar.bz2
scummvm-rg350-f4902b516ec8486338b777354809171112671e5b.zip
SHERLOCK: Moving split up classes into their own files
Diffstat (limited to 'engines/sherlock/user_interface.h')
-rw-r--r--engines/sherlock/user_interface.h228
1 files changed, 0 insertions, 228 deletions
diff --git a/engines/sherlock/user_interface.h b/engines/sherlock/user_interface.h
index dfd6d02efd..042997a3e2 100644
--- a/engines/sherlock/user_interface.h
+++ b/engines/sherlock/user_interface.h
@@ -50,18 +50,6 @@ enum MenuMode {
SETUP_MODE = 12
};
-extern const char COMMANDS[13];
-extern const int MENU_POINTS[12][4];
-
-extern const int INVENTORY_POINTS[8][3];
-extern const char INVENTORY_COMMANDS[9];
-extern const char *const PRESS_KEY_FOR_MORE;
-extern const char *const PRESS_KEY_TO_CONTINUE;
-
-class SherlockEngine;
-class Inventory;
-class Talk;
-
class UserInterface {
protected:
SherlockEngine *_vm;
@@ -137,222 +125,6 @@ public:
virtual void printObjectDesc() {}
};
-namespace Scalpel {
-
-class ScalpelUserInterface: public UserInterface {
- friend class Inventory;
- friend class Settings;
- friend class Talk;
-private:
- ImageFile *_controlPanel;
- ImageFile *_controls;
- char _keyPress;
- int _lookHelp;
- int _bgFound, _oldBgFound;
- int _help, _oldHelp;
- char _key, _oldKey;
- int _temp, _oldTemp;
- int _oldLook;
- bool _keyboardInput;
- bool _pause;
- int _cNum;
- Common::String _cAnimStr;
- Common::String _descStr;
- int _find;
- int _oldUse;
-private:
- /**
- * Draws the image for a user interface button in the down/pressed state.
- */
- void depressButton(int num);
-
- /**
- * If he mouse button is pressed, then calls depressButton to draw the button
- * as pressed; if not, it will show it as released with a call to "restoreButton".
- */
- void pushButton(int num);
-
- /**
- * By the time this method has been called, the graphics for the button change
- * have already been drawn. This simply takes care of switching the mode around
- * accordingly
- */
- void toggleButton(int num);
-
- /**
- * Creates a text window and uses it to display the in-depth description
- * of the highlighted object
- */
- void examine();
-
- /**
- * Print the name of an object in the scene
- */
- void lookScreen(const Common::Point &pt);
-
- /**
- * Gets the item in the inventory the mouse is on and display's it's description
- */
- void lookInv();
-
- /**
- * Handles input when the file list window is being displayed
- */
- void doEnvControl();
-
- /**
- * Handle input whilst the inventory is active
- */
- void doInvControl();
-
- /**
- * Handles waiting whilst an object's description window is open.
- */
- void doLookControl();
-
- /**
- * Handles input until one of the user interface buttons/commands is selected
- */
- void doMainControl();
-
- /**
- * Handles the input for the MOVE, OPEN, and CLOSE commands
- */
- void doMiscControl(int allowed);
-
- /**
- * Handles input for picking up items
- */
- void doPickControl();
-
- /**
- * Handles input when in talk mode. It highlights the buttons and available statements,
- * and handles allowing the user to click on them
- */
- void doTalkControl();
-
- /**
- * Handles events when the Journal is active.
- * @remarks Whilst this would in theory be better in the Journal class, since it displays in
- * the user interface, it uses so many internal UI fields, that it sort of made some sense
- * to put it in the UserInterface class.
- */
- void journalControl();
-
- /**
- * Checks to see whether a USE action is valid on the given object
- */
- void checkUseAction(const UseType *use, const Common::String &invName, const char *const messages[],
- int objNum, bool giveMode);
-
- /**
- * Called for OPEN, CLOSE, and MOVE actions are being done
- */
- void checkAction(ActionType &action, const char *const messages[], int objNum);
-
- /**
- * Print the previously selected object's decription
- */
- void printObjectDesc(const Common::String &str, bool firstTime);
-public:
- ScalpelUserInterface(SherlockEngine *vm);
- virtual ~ScalpelUserInterface();
-
- /**
- * Handles counting down whilst checking for input, then clears the info line.
- */
- void whileMenuCounter();
-
- /**
- * Draws the image for the given user interface button in the up
- * (not selected) position
- */
- void restoreButton(int num);
-public:
- /**
- * Resets the user interface
- */
- virtual void reset();
-
- /**
- * Main input handler for the user interface
- */
- virtual void handleInput();
-
- /**
- * Draw the user interface onto the screen's back buffers
- */
- virtual void drawInterface(int bufferNum = 3);
-
- /**
- * Displays a passed window by gradually scrolling it vertically on-screen
- */
- virtual void summonWindow(const Surface &bgSurface, bool slideUp = true);
-
- /**
- * Slide the window stored in the back buffer onto the screen
- */
- virtual void summonWindow(bool slideUp = true, int height = CONTROLS_Y);
-
- /**
- * Close a currently open window
- * @param flag 0 = slide old window down, 1 = slide prior UI back up
- */
- virtual void banishWindow(bool slideUp = true);
-
- /**
- * Clears the info line of the screen
- */
- virtual void clearInfo();
-
- /**
- * Clear any active text window
- */
- virtual void clearWindow();
-
- /**
- * Print the previously selected object's decription
- */
- virtual void printObjectDesc();
-};
-
-} // End of namespace Scalpel
-
-namespace Tattoo {
-
-class TattooUserInterface : public UserInterface {
-private:
- Common::Rect _menuBounds;
- Common::Rect _oldMenuBounds;
- Common::Rect _invMenuBounds;
- Common::Rect _oldInvMenuBounds;
- Common::Rect _oldTagBounds;
- Common::Rect _oldInvGraphicBounds;
- Surface *_menuBuffer;
- Surface *_invMenuBuffer;
-public:
- TattooUserInterface(SherlockEngine *vm);
-
- /**
- * Handles restoring any areas of the back buffer that were/are covered by UI elements
- */
- void doBgAnimRestoreUI();
-
- /**
- * Checks to see if the screen needs to be scrolled. If so, scrolls it towards the target position
- */
- void doScroll();
-public:
- virtual ~TattooUserInterface() {}
-
- /**
- * Main input handler for the user interface
- */
- virtual void handleInput();
-};
-
-} // End of namespace Tattoo
-
} // End of namespace Sherlock
#endif