diff options
author | Bastien Bouclet | 2016-07-04 20:40:44 +0200 |
---|---|---|
committer | Bastien Bouclet | 2016-07-04 20:47:16 +0200 |
commit | 0440ff64f15f00597d82841fd1ef6febc905302e (patch) | |
tree | 82e48cd03fef0c208bf02e8b6ade03e6e7a4df0e /engines/mohawk/dialogs.h | |
parent | d35d8efc5041813fd5fdd1fc55025c7835ab358e (diff) | |
download | scummvm-rg350-0440ff64f15f00597d82841fd1ef6febc905302e.tar.gz scummvm-rg350-0440ff64f15f00597d82841fd1ef6febc905302e.tar.bz2 scummvm-rg350-0440ff64f15f00597d82841fd1ef6febc905302e.zip |
MOHAWK: Have the Myst and Riven options dialog share a base class
Now the Riven options dialog has the same features as the Myst one:
- Screen centering
- Save / Load / Quit buttons
Diffstat (limited to 'engines/mohawk/dialogs.h')
-rw-r--r-- | engines/mohawk/dialogs.h | 56 |
1 files changed, 37 insertions, 19 deletions
diff --git a/engines/mohawk/dialogs.h b/engines/mohawk/dialogs.h index 6c9862e43f..3cfb628f9d 100644 --- a/engines/mohawk/dialogs.h +++ b/engines/mohawk/dialogs.h @@ -28,7 +28,6 @@ #include "common/events.h" #include "common/str.h" #include "gui/dialog.h" -#include "gui/options.h" namespace GUI { class SaveLoadChooser; @@ -72,18 +71,44 @@ public: virtual void handleKeyDown(Common::KeyState state); }; +#if defined(ENABLE_MYST) || defined(ENABLE_RIVEN) + +class MohawkOptionsDialog : public GUI::Dialog { +public: + MohawkOptionsDialog(MohawkEngine *_vm); + virtual ~MohawkOptionsDialog(); + + virtual void open() override; + virtual void reflowLayout() override; + virtual void handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data) override; + +private: + MohawkEngine *_vm; + + GUI::ButtonWidget *_loadButton; + GUI::ButtonWidget *_saveButton; + + GUI::SaveLoadChooser *_loadDialog; + GUI::SaveLoadChooser *_saveDialog; + + void save(); + void load(); +}; + +#endif + #ifdef ENABLE_MYST class MohawkEngine_Myst; -class MystOptionsDialog : public GUI::Dialog { +class MystOptionsDialog : public MohawkOptionsDialog { public: MystOptionsDialog(MohawkEngine_Myst *vm); - ~MystOptionsDialog(); - void open(); + virtual ~MystOptionsDialog(); + + virtual void open() override; + virtual void handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data); - virtual void reflowLayout() override; - virtual void handleCommand(GUI::CommandSender*, uint32, uint32); private: MohawkEngine_Myst *_vm; @@ -93,15 +118,6 @@ private: GUI::ButtonWidget *_dropPageButton; GUI::ButtonWidget *_showMapButton; GUI::ButtonWidget *_returnToMenuButton; - - GUI::ButtonWidget *_loadButton; - GUI::ButtonWidget *_saveButton; - - GUI::SaveLoadChooser *_loadDialog; - GUI::SaveLoadChooser *_saveDialog; - - void save(); - void load(); }; #endif @@ -110,15 +126,17 @@ private: class MohawkEngine_Riven; -class RivenOptionsDialog : public GUI::Dialog { +class RivenOptionsDialog : public MohawkOptionsDialog { public: RivenOptionsDialog(MohawkEngine_Riven *vm); - ~RivenOptionsDialog(); - void open(); + virtual ~RivenOptionsDialog(); + + virtual void open() override; + virtual void handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data) override; - virtual void handleCommand(GUI::CommandSender*, uint32, uint32); private: MohawkEngine_Riven *_vm; + GUI::CheckboxWidget *_zipModeCheckbox; GUI::CheckboxWidget *_waterEffectCheckbox; }; |