1 /* -*- Mode: C++; c-basic-offset: 2; tab-width: 2; indent-tabs-mode: nil -*- 2 * 3 * Quadra, an action puzzle game 4 * Copyright (C) 1998-2000 Ludus Design 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or (at your option) any later version. 10 * 11 * This program is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19 */ 20 21 #ifndef _HEADER_MENU_BASE 22 #define _HEADER_MENU_BASE 23 24 #include "overmind.h" 25 #include "misc.h" 26 class Inter; 27 class Zone; 28 class Bitmap; 29 class Font; 30 31 class Menu_quit: public Menu { 32 protected: 33 bool quit; 34 public: Menu(base)35 Menu_quit(Inter *base=NULL): Menu(base) { 36 quit = false; 37 } 38 virtual void step(); 39 }; 40 41 class Menu_standard: public Menu_quit { 42 public: Menu_quit(base)43 Menu_standard(Inter *base=NULL): Menu_quit(base) { } init()44 virtual void init() { 45 Menu_quit::init(); 46 call(new Fade_in(pal)); 47 } 48 }; 49 50 class Menu_fadein: public Menu { 51 public: Menu(base)52 Menu_fadein(Inter *base=NULL): Menu(base) { } init()53 virtual void init() { 54 Menu::init(); 55 call(new Fade_in(pal)); 56 } 57 }; 58 59 class Menu_net_problem: public Menu { 60 Zone *cancel; 61 public: 62 Menu_net_problem(const char *s, const char *context, Bitmap *bit, Font *font); 63 virtual void step(); 64 }; 65 66 class Call_setfont: public Module { 67 Module *module; 68 const Palette &pal; 69 public: 70 Call_setfont(const Palette &p, Module *m); 71 virtual void init(); 72 virtual void step(); 73 }; 74 75 #endif 76