X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Ftitle.hpp;h=466ec0e9efaa0ad4dcd3592cb01dc3f94ca169dd;hb=566f8eb2da26d5a2bb4ed5798a5774499f2e511f;hp=aa264736bb1627fdb7eccff4ccccba43232b71e4;hpb=1486ceaaf9dd7a9d2d7e3654550b9a2768df2a56;p=supertux.git diff --git a/src/title.hpp b/src/title.hpp index aa264736b..466ec0e9e 100644 --- a/src/title.hpp +++ b/src/title.hpp @@ -1,8 +1,8 @@ // $Id$ -// +// // SuperTux -// Copyright (C) 2000 Bill Kendrick // Copyright (C) 2004 Tobias Glaesser +// Copyright (C) 2006 Matthias Braun // // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU General Public License @@ -13,7 +13,7 @@ // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. -// +// // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA @@ -25,6 +25,7 @@ #include #include "screen.hpp" #include "game_session.hpp" +#include "addon.hpp" class Menu; class World; @@ -37,6 +38,7 @@ public: virtual ~TitleScreen(); virtual void setup(); + virtual void leave(); virtual void draw(DrawingContext& context); @@ -48,21 +50,29 @@ private: bool process_load_game_menu(); void make_tux_jump(); void update_load_game_menu(); + void generate_main_menu(); void generate_contrib_menu(); void check_levels_contrib_menu(); void check_contrib_world_menu(); void free_contrib_menu(); + void generate_addons_menu(); + void check_addons_menu(); + void free_addons_menu(); + std::auto_ptr main_menu; std::auto_ptr load_game_menu; std::auto_ptr contrib_menu; std::auto_ptr contrib_world_menu; + std::auto_ptr main_world; std::vector contrib_worlds; - int current_world; - World* current_contrib_world; - + std::auto_ptr addons_menu; + std::vector addons; /**< shown list of Add-ons */ + std::vector available_addons; /**< list of downloadable Add-ons */ + std::vector installed_addons; /**< list of currently installed Add-ons */ + World* current_world; + std::auto_ptr controller; std::auto_ptr titlesession; }; #endif -