diff options
author | johndoe123 | 2013-01-29 15:40:41 +0000 |
---|---|---|
committer | Willem Jan Palenstijn | 2013-05-08 20:47:43 +0200 |
commit | 8749efdea821433cf355ae4fa543ef412f33c2fe (patch) | |
tree | aabfe5ebe3c0d88c775a0cd752e23ecced76cce8 /engines/neverhood/menumodule.h | |
parent | a03879963f2e8adebd1f4bb90975ff0c43f286dc (diff) | |
download | scummvm-rg350-8749efdea821433cf355ae4fa543ef412f33c2fe.tar.gz scummvm-rg350-8749efdea821433cf355ae4fa543ef412f33c2fe.tar.bz2 scummvm-rg350-8749efdea821433cf355ae4fa543ef412f33c2fe.zip |
NEVERHOOD: Add game-internal savegame delete menu
- Rename Widget::addSprite to Widget::initialize
Diffstat (limited to 'engines/neverhood/menumodule.h')
-rw-r--r-- | engines/neverhood/menumodule.h | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/engines/neverhood/menumodule.h b/engines/neverhood/menumodule.h index 2f91bdb40e..39cd36a7a2 100644 --- a/engines/neverhood/menumodule.h +++ b/engines/neverhood/menumodule.h @@ -44,6 +44,7 @@ public: virtual ~MenuModule(); void setLoadgameInfo(uint index); void setSavegameInfo(const Common::String &description, uint index, bool newSavegame); + void setDeletegameInfo(uint index); protected: int _sceneNum; byte *_savedPaletteData; @@ -55,8 +56,10 @@ protected: uint32 handleMessage(int messageNum, const MessageParam ¶m, Entity *sender); void createLoadGameMenu(); void createSaveGameMenu(); + void createDeleteGameMenu(); void handleLoadGameMenuAction(bool doLoad); void handleSaveGameMenuAction(bool doSave, bool doQuery); + void handleDeleteGameMenuAction(bool doDelete); void loadSavegameList(); }; @@ -114,7 +117,7 @@ public: virtual void onClick(); virtual void setPosition(int16 x, int16 y); virtual void refreshPosition(); - virtual void addSprite(); + virtual void initialize(); virtual int16 getWidth(); virtual int16 getHeight(); virtual void enterWidget(); @@ -133,7 +136,7 @@ public: TextLabelWidget(NeverhoodEngine *vm, int16 x, int16 y, int16 itemID, WidgetScene *parentScene, int baseObjectPriority, int baseSurfacePriority, const byte *string, int stringLen, BaseSurface *drawSurface, int16 tx, int16 ty, FontSurface *fontSurface); - virtual void addSprite(); + virtual void initialize(); virtual int16 getWidth(); virtual int16 getHeight(); void drawString(int maxStringLength); @@ -154,7 +157,7 @@ public: int maxStringLength, FontSurface *fontSurface, uint32 fileHash, const NRect &rect); ~TextEditWidget(); virtual void onClick(); - virtual void addSprite(); + virtual void initialize(); virtual void enterWidget(); virtual void exitWidget(); void setCursor(uint32 cursorFileHash, int16 cursorWidth, int16 cursorHeight); @@ -191,7 +194,7 @@ public: SavegameListBox(NeverhoodEngine *vm, int16 x, int16 y, int16 itemID, WidgetScene *parentScene, SavegameList *savegameList, FontSurface *fontSurface, uint32 bgFileHash, const NRect &rect); virtual void onClick(); - virtual void addSprite(); + virtual void initialize(); void buildItems(); void drawItems(); void refresh(); @@ -244,6 +247,21 @@ protected: void performLoadGame(); }; +class DeleteGameMenu : public WidgetScene { +public: + DeleteGameMenu(NeverhoodEngine *vm, Module *parentModule, SavegameList *savegameList); + ~DeleteGameMenu(); + virtual void handleEvent(int16 itemID, int eventType); +protected: + SavegameList *_savegameList; + FontSurface *_fontSurface; + SavegameListBox *_listBox; + TextEditWidget *_textEditWidget; + Common::String _savegameDescription; + uint32 handleMessage(int messageNum, const MessageParam ¶m, Entity *sender); + void performDeleteGame(); +}; + class QueryOverwriteMenu : public Scene { public: QueryOverwriteMenu(NeverhoodEngine *vm, Module *parentModule, const Common::String &description); |