diff options
author | Paul Gilbert | 2016-05-02 22:23:21 -0400 |
---|---|---|
committer | Paul Gilbert | 2016-07-10 16:38:15 -0400 |
commit | 6166c33734efdeabca0fa9d3eeda34389af6b79b (patch) | |
tree | fff43e1b69aa5466eb2b690efc217110598fc246 /engines/titanic/pet_control/pet_remote_glyphs.h | |
parent | 8551f08d0d006b0a2be483420e8920be501d1d55 (diff) | |
download | scummvm-rg350-6166c33734efdeabca0fa9d3eeda34389af6b79b.tar.gz scummvm-rg350-6166c33734efdeabca0fa9d3eeda34389af6b79b.tar.bz2 scummvm-rg350-6166c33734efdeabca0fa9d3eeda34389af6b79b.zip |
TITANIC: Implemented more PET Remote glyph classes
Diffstat (limited to 'engines/titanic/pet_control/pet_remote_glyphs.h')
-rw-r--r-- | engines/titanic/pet_control/pet_remote_glyphs.h | 80 |
1 files changed, 79 insertions, 1 deletions
diff --git a/engines/titanic/pet_control/pet_remote_glyphs.h b/engines/titanic/pet_control/pet_remote_glyphs.h index 0043ea97d8..e6dfc115c0 100644 --- a/engines/titanic/pet_control/pet_remote_glyphs.h +++ b/engines/titanic/pet_control/pet_remote_glyphs.h @@ -37,7 +37,8 @@ enum RemoteGlyph { GLYPH_INFLATE_RELAXATION = 10, GLYPH_DEPLOY_MAINTENANCE = 11, GLYPH_DEPLOY_WORK_SURFACE = 12, GLYPH_DEPLOY_MINOR_RELAXATION = 13, GLYPH_DEPLOY_SINK = 14, GLYPH_DEPLOY_MAJOR_STORAGE = 15, - GLYPH_SUCCUBUS_DELIVERY = 16 + GLYPH_SUCCUBUS_DELIVERY = 16, GLYPH_NAVIGATION_CONTROLLER = 17, + GLYPH_BOTTOM_OF_WELL = 18 }; enum RemoteMessage { @@ -143,6 +144,34 @@ public: bool elementMouseButtonUpMsg(const Point &pt, int petNum); }; +class CRemoteGotoGlyph : public CPetRemoteGlyph { +protected: + int _roomIndex; + CPetGfxElement *_gfxElement; +public: + CRemoteGotoGlyph() : CPetRemoteGlyph(), _gfxElement(nullptr), _roomIndex(21) {} + + /** + * Setup the glyph + */ + virtual bool setup(CPetControl *petControl, CPetGlyphs *owner); + + /** + * Handles any secondary drawing of the glyph + */ + virtual void draw2(CScreenManager *screenManager); + + /** + * Called for mouse button down messages + */ + virtual bool MouseButtonDownMsg(const Point &pt); + + /** + * Handles mouse button up messages + */ + virtual bool MouseButtonUpMsg(const Point &pt); +}; + class CSummonElevatorGlyph : public CBasicRemoteGlyph { public: CSummonElevatorGlyph() : CBasicRemoteGlyph( @@ -587,6 +616,55 @@ public: virtual void getTooltip(CPetText *text); }; +class CNavigationControllerGlyph : public CPetRemoteGlyph { +private: + bool _flag; + CPetGfxElement *_gfxElement; +public: + CNavigationControllerGlyph() : CPetRemoteGlyph(), + _flag(false), _gfxElement(nullptr) {} + + /** + * Setup the glyph + */ + virtual bool setup(CPetControl *petControl, CPetGlyphs *owner); + + /** + * Handles any secondary drawing of the glyph + */ + virtual void draw2(CScreenManager *screenManager); + + /** + * Called for mouse button down messages + */ + virtual bool MouseButtonDownMsg(const Point &pt); + + /** + * Handles mouse button up messages + */ + virtual bool MouseButtonUpMsg(const Point &pt); + + /** + * Returns the tooltip text for when the glyph is selected + */ + virtual void getTooltip(CPetText *text); +}; + +class CBottomOfWellGlyph : public CRemoteGotoGlyph { +public: + CBottomOfWellGlyph() : CRemoteGotoGlyph() {} + + /** + * Setup the glyph + */ + virtual bool setup(CPetControl *petControl, CPetGlyphs *owner); + + /** + * Returns the tooltip text for when the glyph is selected + */ + virtual void getTooltip(CPetText *text); +}; + } // End of namespace Titanic #endif /* TITANIC_PET_REMOTE_GLYPHS_H */ |