1 /* ScummVM - Graphic Adventure Engine 2 * 3 * ScummVM is the legal property of its developers, whose names 4 * are too numerous to list here. Please refer to the COPYRIGHT 5 * file distributed with this source distribution. 6 * 7 * This program is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU General Public License 9 * as published by the Free Software Foundation; either version 2 10 * of the License, or (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, write to the Free Software 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 20 * 21 */ 22 23 #ifndef BBVS_DIALOGS_H 24 #define BBVS_DIALOGS_H 25 26 #include "bbvs/bbvs.h" 27 #include "gui/dialog.h" 28 29 namespace GUI { 30 class ButtonWidget; 31 class CommandSender; 32 } 33 34 namespace Bbvs { 35 36 enum { 37 // Main menu 38 kCmdNewGame = 'NEWG', 39 kCmdContinue = 'CONT', 40 kCmdOptions = 'OPTN', 41 kCmdMiniGames = 'MINI', 42 kCmdQuit = 'QUIT', 43 // Options 44 kCmdUninstall = 0, 45 kCmdCredits = 'CRED', 46 kCmdOpening = 'OPEN', 47 kCmdChicksNStuff = 'CHIC', 48 // Minigames 49 kCmdHockALoogie = 'HOCK', 50 kCmdBugJustice = 'BUGJ', 51 kCmdCourtChaos = 'CORT', 52 kCmdAirGuitar = 'AIRG', 53 kCmdBack = 'BACK' 54 }; 55 56 enum { 57 kMainMenuScr = 0, 58 kOptionsMenuScr = 1, 59 kMiniGamesMenuScr = 2 60 }; 61 62 class MainMenu : public GUI::Dialog { 63 public: 64 MainMenu(BbvsEngine *vm); 65 ~MainMenu() override; 66 67 void reflowLayout() override; 68 void handleCommand(GUI::CommandSender *sender, uint32 command, uint32 data) override; 69 70 protected: 71 BbvsEngine *_vm; 72 73 void init(); 74 75 GUI::ButtonWidget *_buttons[5]; 76 77 void gotoMenuScreen(int index); 78 bool canContinue(); 79 void gotoScene(int sceneNum); 80 81 }; 82 83 } 84 85 #endif // BBVS_DIALOGS_H 86