X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fmisc.cpp;h=2004302ff0445d2309679b23e39071f1246d9e25;hb=c0c4838b917943354c150d56ab970ca249267037;hp=fcdd6f1abcce1cac365b630467aff1a236c095a7;hpb=60908c905544776c376421b8d3e12eeb936c068f;p=supertux.git diff --git a/src/misc.cpp b/src/misc.cpp index fcdd6f1ab..2004302ff 100644 --- a/src/misc.cpp +++ b/src/misc.cpp @@ -16,106 +16,47 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include -#include "misc.h" -#include "main.h" -#include "gameconfig.h" -#include "game_session.h" -#include "gui/menu.h" -#include "gui/button.h" -#include "title.h" -#include "resources.h" -#include "worldmap.h" -#include "gettext.h" -#include "control/joystickkeyboardcontroller.h" +#include "misc.hpp" +#include "main.hpp" +#include "gameconfig.hpp" +#include "game_session.hpp" +#include "gui/menu.hpp" +#include "gui/button.hpp" +#include "audio/sound_manager.hpp" +#include "title.hpp" +#include "resources.hpp" +#include "worldmap.hpp" +#include "gettext.hpp" +#include "options_menu.hpp" +#include "control/joystickkeyboardcontroller.hpp" Menu* main_menu = 0; Menu* game_menu = 0; -Menu* options_menu = 0; -Menu* options_keys_menu = 0; -Menu* options_joystick_menu = 0; -Menu* highscore_menu = 0; -Menu* load_game_menu = 0; -Menu* save_game_menu = 0; -Menu* contrib_menu = 0; -Menu* contrib_subset_menu = 0; - -void process_options_menu() -{ - switch (options_menu->check()) { - case MNID_FULLSCREEN: - if(config->use_fullscreen != options_menu->is_toggled(MNID_FULLSCREEN)) { - config->use_fullscreen = !config->use_fullscreen; - init_video(); - } - break; - case MNID_SOUND: - if(config->sound_enabled != options_menu->is_toggled(MNID_SOUND)) { - config->sound_enabled = !config->sound_enabled; - sound_manager->enable_sound(config->sound_enabled); - } - break; - case MNID_MUSIC: - if(config->music_enabled != options_menu->is_toggled(MNID_MUSIC)) { - config->music_enabled = !config->music_enabled; - sound_manager->enable_music(config->music_enabled); - } - break; - default: - break; - } -} void setup_menu() { main_menu = new Menu(); - options_menu = new Menu(); - load_game_menu = new Menu(); game_menu = new Menu(); - contrib_menu = new Menu(); - contrib_subset_menu = new Menu(); worldmap_menu = new Menu(); main_menu->set_pos(SCREEN_WIDTH/2, 335); - main_menu->add_submenu(_("Start Game"), load_game_menu, MNID_STARTGAME); - main_menu->add_submenu(_("Contrib Levels"), contrib_menu, MNID_LEVELS_CONTRIB); - main_menu->add_submenu(_("Options"), options_menu); - main_menu->add_entry(MNID_LEVELEDITOR, _("Level Editor")); + main_menu->add_entry(MNID_STARTGAME, _("Start Game")); + main_menu->add_entry(MNID_LEVELS_CONTRIB, _("Contrib Levels")); + main_menu->add_submenu(_("Options"), get_options_menu()); main_menu->add_entry(MNID_CREDITS, _("Credits")); main_menu->add_entry(MNID_QUITMAINMENU, _("Quit")); - options_menu->add_label(_("Options")); - options_menu->add_hl(); - options_menu->add_toggle(MNID_FULLSCREEN,_("Fullscreen"), config->use_fullscreen); - options_menu->add_toggle(MNID_SOUND, _("Sound"), config->sound_enabled); - options_menu->add_toggle(MNID_MUSIC, _("Music"), config->music_enabled); - options_menu->add_submenu(_("Setup Keys"), - main_controller->get_key_options_menu()); - options_menu->add_submenu(_("Setup Joystick"), - main_controller->get_joystick_options_menu()); - options_menu->add_hl(); - options_menu->add_back(_("Back")); - - load_game_menu->add_label(_("Start Game")); - load_game_menu->add_hl(); - load_game_menu->add_deactive(1, "Slot 1"); - load_game_menu->add_deactive(2, "Slot 2"); - load_game_menu->add_deactive(3, "Slot 3"); - load_game_menu->add_deactive(4, "Slot 4"); - load_game_menu->add_deactive(5, "Slot 5"); - load_game_menu->add_hl(); - load_game_menu->add_back(_("Back")); - game_menu->add_label(_("Pause")); game_menu->add_hl(); game_menu->add_entry(MNID_CONTINUE, _("Continue")); - game_menu->add_submenu(_("Options"), options_menu); + game_menu->add_submenu(_("Options"), get_options_menu()); game_menu->add_hl(); game_menu->add_entry(MNID_ABORTLEVEL, _("Abort Level")); worldmap_menu->add_label(_("Pause")); worldmap_menu->add_hl(); worldmap_menu->add_entry(WorldMapNS::MNID_RETURNWORLDMAP, _("Continue")); - worldmap_menu->add_submenu(_("Options"), options_menu); + worldmap_menu->add_submenu(_("Options"), get_options_menu()); worldmap_menu->add_hl(); worldmap_menu->add_entry(WorldMapNS::MNID_QUITWORLDMAP, _("Quit Game")); } @@ -125,9 +66,6 @@ void free_menu() delete worldmap_menu; delete main_menu; delete game_menu; - delete options_menu; - delete contrib_menu; - delete contrib_subset_menu; - delete load_game_menu; + free_options_menu(); }