diff options
author | Paul Gilbert | 2016-04-17 21:08:42 -0400 |
---|---|---|
committer | Paul Gilbert | 2016-07-10 16:11:21 -0400 |
commit | 46a30255b0e5a7f5dad4fd032388d31a69208b62 (patch) | |
tree | 1e668339aecb1246c9ec20515b81866d81ab75d2 /engines/titanic/pet_control/pet_glyphs.h | |
parent | a11e677494d7cb3c6b8ed2c56095873d46a00ab8 (diff) | |
download | scummvm-rg350-46a30255b0e5a7f5dad4fd032388d31a69208b62.tar.gz scummvm-rg350-46a30255b0e5a7f5dad4fd032388d31a69208b62.tar.bz2 scummvm-rg350-46a30255b0e5a7f5dad4fd032388d31a69208b62.zip |
TITANIC: Seperate PET classes setup and reset methods
Diffstat (limited to 'engines/titanic/pet_control/pet_glyphs.h')
-rw-r--r-- | engines/titanic/pet_control/pet_glyphs.h | 31 |
1 files changed, 28 insertions, 3 deletions
diff --git a/engines/titanic/pet_control/pet_glyphs.h b/engines/titanic/pet_control/pet_glyphs.h index 6160c454a1..fceca4d27e 100644 --- a/engines/titanic/pet_control/pet_glyphs.h +++ b/engines/titanic/pet_control/pet_glyphs.h @@ -30,6 +30,19 @@ namespace Titanic { class CPetGlyphs; +class CPetSection; + +enum GlyphActionMode { ACTION_REMOVE = 0, ACTION_REMOVED = 1, ACTION_CHANGE = 2 }; + +class CGlyphAction { +protected: + GlyphActionMode _mode; +public: + CGlyphAction() : _mode(ACTION_REMOVED) {} + CGlyphAction(GlyphActionMode mode) : _mode(mode) {} + + GlyphActionMode getMode() const { return _mode; } +}; class CPetGlyph : public ListItem { public: @@ -105,7 +118,11 @@ public: virtual int proc35() { return 0; } virtual void proc36() {} virtual int proc37() { return 0; } - virtual int proc38() { return 1; } + + /** + * Does a processing action on the glyph + */ + virtual bool doAction(CGlyphAction *action) { return true; } }; class CPetGlyphs : public List<CPetGlyph> { @@ -149,17 +166,25 @@ public: CPetGlyphs(); /** + * Set the number of visible glyphs + */ + void setNumVisible(int total); + + /** * Clears the glyph list */ void clear(); - virtual void proc8(); + /** + * The visual dimensions for the control and it's components + */ + virtual void setup(int numVisible, CPetSection *owner); /** * Set up the control */ - virtual void setup(); + virtual void reset(); virtual void proc10(); virtual void proc11(); |