From 72a9f06f93c06aca4572c8a257cdee806e04efb2 Mon Sep 17 00:00:00 2001 From: Bastien Bouclet Date: Sun, 14 Aug 2011 09:17:14 +0200 Subject: MOHAWK: Add a return to menu button to the dialog for the demo --- engines/mohawk/dialogs.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'engines/mohawk/dialogs.cpp') diff --git a/engines/mohawk/dialogs.cpp b/engines/mohawk/dialogs.cpp index 11e050aa72..2d1cc3bfa3 100644 --- a/engines/mohawk/dialogs.cpp +++ b/engines/mohawk/dialogs.cpp @@ -81,7 +81,8 @@ enum { kTransCmd = 'TRAN', kWaterCmd = 'WATR', kDropCmd = 'DROP', - kMapCmd = 'SMAP' + kMapCmd = 'SMAP', + kMenuCmd = 'MENU' }; #ifdef ENABLE_MYST @@ -97,6 +98,12 @@ MystOptionsDialog::MystOptionsDialog(MohawkEngine_Myst* vm) : GUI::OptionsDialog else _showMapButton = 0; + // Myst demo only has a menu + if (_vm->getFeatures() & GF_DEMO) + _returnToMenuButton = new GUI::ButtonWidget(this, 15, 95, 100, 25, _("~M~ain Menu"), 0, kMenuCmd); + else + _returnToMenuButton = 0; + new GUI::ButtonWidget(this, 95, 160, 120, 25, _("~O~K"), 0, GUI::kOKCmd); new GUI::ButtonWidget(this, 225, 160, 120, 25, _("~C~ancel"), 0, GUI::kCloseCmd); } @@ -113,6 +120,11 @@ void MystOptionsDialog::open() { _showMapButton->setEnabled(_vm->_scriptParser && _vm->_scriptParser->getMap()); + // Return to menu button is not enabled on the menu + if (_returnToMenuButton) + _returnToMenuButton->setEnabled(_vm->_scriptParser && + _vm->getCurStack() != kDemoStack); + // Zip mode is disabled in the demo if (_vm->getFeatures() & GF_DEMO) _zipModeCheckbox->setEnabled(false); @@ -137,6 +149,10 @@ void MystOptionsDialog::handleCommand(GUI::CommandSender *sender, uint32 cmd, ui _vm->_needsShowMap = true; close(); break; + case kMenuCmd: + _vm->_needsShowDemoMenu = true; + close(); + break; case GUI::kCloseCmd: close(); break; -- cgit v1.2.3