- added 1up to tileset
[supertux.git] / src / setup.cpp
index dba7cf0..ffd9e3f 100644 (file)
@@ -373,7 +373,11 @@ void st_menu(void)
 
   options_menu->additem(MN_LABEL,"Options",0,0);
   options_menu->additem(MN_HL,"",0,0);
+#ifndef NOOPENGL
   options_menu->additem(MN_TOGGLE,"OpenGL",use_gl,0);
+#else
+  options_menu->additem(MN_DEACTIVE,"OpenGL (not supported)",use_gl,0);
+#endif
   options_menu->additem(MN_TOGGLE,"Fullscreen",use_fullscreen,0);
   if(audio_device)
     {
@@ -510,13 +514,13 @@ void process_options_menu(void)
   switch (options_menu->check())
     {
     case 2:
+#ifndef NOOPENGL
       if(use_gl != options_menu->item[2].toggled)
         {
-#ifndef NOOPENGL
           use_gl = !use_gl;
           st_video_setup();
-#endif
         }
+#endif
       break;
     case 3:
       if(use_fullscreen != options_menu->item[3].toggled)
@@ -573,21 +577,21 @@ void st_general_setup(void)
 
   /* Load global images: */
 
-  text_load(&black_text, datadir + "/images/status/letters-black.png", TEXT_TEXT, 16,18);
-  text_load(&gold_text,datadir + "/images/status/letters-gold.png", TEXT_TEXT, 16,18);
-  text_load(&blue_text,datadir + "/images/status/letters-blue.png", TEXT_TEXT, 16,18);
-  text_load(&red_text,datadir + "/images/status/letters-red.png", TEXT_TEXT, 16,18);
-  text_load(&white_text,datadir + "/images/status/letters-white.png", TEXT_TEXT, 16,18);
-  text_load(&white_small_text,datadir + "/images/status/letters-white-small.png", TEXT_TEXT, 8,9);
-  text_load(&white_big_text,datadir + "/images/status/letters-white-big.png", TEXT_TEXT, 20,23);
-  text_load(&yellow_nums,datadir + "/images/status/numbers.png", TEXT_NUM, 32,32);
+  black_text  = new Text(datadir + "/images/status/letters-black.png", TEXT_TEXT, 16,18);
+  gold_text   = new Text(datadir + "/images/status/letters-gold.png", TEXT_TEXT, 16,18);
+  blue_text   = new Text(datadir + "/images/status/letters-blue.png", TEXT_TEXT, 16,18);
+  red_text    = new Text(datadir + "/images/status/letters-red.png", TEXT_TEXT, 16,18);
+  white_text  = new Text(datadir + "/images/status/letters-white.png", TEXT_TEXT, 16,18);
+  white_small_text = new Text(datadir + "/images/status/letters-white-small.png", TEXT_TEXT, 8,9);
+  white_big_text   = new Text(datadir + "/images/status/letters-white-big.png", TEXT_TEXT, 20,23);
+  yellow_nums = new Text(datadir + "/images/status/numbers.png", TEXT_NUM, 32,32);
 
   /* Load GUI/menu images: */
-  texture_load(&checkbox, datadir + "/images/status/checkbox.png", USE_ALPHA);
-  texture_load(&checkbox_checked, datadir + "/images/status/checkbox-checked.png", USE_ALPHA);
-  texture_load(&back, datadir + "/images/status/back.png", USE_ALPHA);
-  texture_load(&arrow_left, datadir + "/images/icons/left.png", USE_ALPHA);
-  texture_load(&arrow_right, datadir + "/images/icons/right.png", USE_ALPHA);
+  checkbox = new Surface(datadir + "/images/status/checkbox.png", USE_ALPHA);
+  checkbox_checked = new Surface(datadir + "/images/status/checkbox-checked.png", USE_ALPHA);
+  back = new Surface(datadir + "/images/status/back.png", USE_ALPHA);
+  arrow_left = new Surface(datadir + "/images/icons/left.png", USE_ALPHA);
+  arrow_right = new Surface(datadir + "/images/icons/right.png", USE_ALPHA);
 
   /* Load the mouse-cursor */
   mouse_cursor = new MouseCursor( datadir + "/images/status/mousecursor.png",1);
@@ -599,20 +603,20 @@ void st_general_free(void)
 
   /* Free global images: */
 
-  text_free(&black_text);
-  text_free(&gold_text);
-  text_free(&white_text);
-  text_free(&blue_text);
-  text_free(&red_text);
-  text_free(&white_small_text);
-  text_free(&white_big_text);
+  delete black_text;
+  delete gold_text;
+  delete white_text;
+  delete blue_text;
+  delete red_text;
+  delete white_small_text;
+  delete white_big_text;
 
   /* Free GUI/menu images: */
-  texture_free(&checkbox);
-  texture_free(&checkbox_checked);
-  texture_free(&back);
-  texture_free(&arrow_left);
-  texture_free(&arrow_right);
+  delete checkbox;
+  delete checkbox_checked;
+  delete back;
+  delete arrow_left;
+  delete arrow_right;
 
   /* Free mouse-cursor */
   delete mouse_cursor;
@@ -628,7 +632,6 @@ void st_general_free(void)
 
 void st_video_setup(void)
 {
-
   if(screen != NULL)
     SDL_FreeSurface(screen);
 
@@ -644,18 +647,15 @@ void st_video_setup(void)
     }
 
   /* Open display: */
-
   if(use_gl)
     st_video_setup_gl();
   else
     st_video_setup_sdl();
 
-  texture_setup();
+  Surface::reload_all();
 
   /* Set window manager stuff: */
-
   SDL_WM_SetCaption("SuperTux " VERSION, "SuperTux");
-
 }
 
 void st_video_setup_sdl(void)