Removed trailing whitespace from all *.?pp files
[supertux.git] / src / supertux / resources.cpp
index 9d57379..aed7571 100644 (file)
 
 MouseCursor* Resources::mouse_cursor = NULL;
 
-Font* Resources::fixed_font = NULL;
-Font* Resources::normal_font = NULL;
-Font* Resources::small_font = NULL;
-Font* Resources::big_font = NULL;
+FontPtr Resources::fixed_font;
+FontPtr Resources::normal_font;
+FontPtr Resources::small_font;
+FontPtr Resources::big_font;
+
+SurfacePtr Resources::checkbox;
+SurfacePtr Resources::checkbox_checked;
+SurfacePtr Resources::back;
+SurfacePtr Resources::arrow_left;
+SurfacePtr Resources::arrow_right;
 
 /* Load graphics/sounds shared between all levels: */
 void
 Resources::load_shared()
 {
   /* Load the mouse-cursor */
-  mouse_cursor = new MouseCursor("images/engine/menu/mousecursor.png");
+  mouse_cursor = new MouseCursor("images/engine/menu/mousecursor.png",
+                                 "images/engine/menu/mousecursor-click.png",
+                                 "images/engine/menu/mousecursor-link.png");
   MouseCursor::set_current(mouse_cursor);
 
   /* Load global images: */
-  fixed_font = new Font(Font::FIXED, "fonts/white.stf");
-  normal_font = new Font(Font::VARIABLE, "fonts/white.stf");
-  small_font = new Font(Font::VARIABLE, "fonts/white-small.stf", 1);
-  big_font = new Font(Font::VARIABLE, "fonts/white-big.stf", 3);
+  fixed_font.reset(new Font(Font::FIXED, "fonts/white.stf"));
+  normal_font.reset(new Font(Font::VARIABLE, "fonts/white.stf"));
+  small_font.reset(new Font(Font::VARIABLE, "fonts/white-small.stf", 1));
+  big_font.reset(new Font(Font::VARIABLE, "fonts/white-big.stf", 3));
+
+  /* Load menu images */
+  checkbox = Surface::create("images/engine/menu/checkbox-unchecked.png");
+  checkbox_checked = Surface::create("images/engine/menu/checkbox-checked.png");
+  back = Surface::create("images/engine/menu/arrow-back.png");
+  arrow_left = Surface::create("images/engine/menu/arrow-left.png");
+  arrow_right = Surface::create("images/engine/menu/arrow-right.png");
 
   tile_manager   = new TileManager();
   sprite_manager = new SpriteManager();
-
-  player_status = new PlayerStatus();
 }
 
 /* Free shared data: */
 void
 Resources::unload_shared()
 {
+  /* Free menu images */
+  if(checkbox != NULL)
+    checkbox.reset();
+  if(checkbox_checked != NULL)
+    checkbox_checked.reset();
+  if(back != NULL)
+    back.reset();
+  if(arrow_left != NULL)
+    arrow_left.reset();
+  if(arrow_right != NULL)
+    arrow_right.reset();
+
   /* Free global images: */
-  delete normal_font;
-  delete small_font;
-  delete big_font;
+  if(fixed_font != NULL)
+    fixed_font.reset();
+  if(normal_font != NULL)
+    normal_font.reset();
+  if(small_font != NULL)
+    small_font.reset();
+  if(big_font != NULL)
+    big_font.reset();
 
-  delete sprite_manager;
-  sprite_manager = NULL;
+  /* Free tilesets */
+  delete tile_manager;
+  tile_manager = 0;
 
-  /* Free mouse-cursor */
-  delete mouse_cursor;
+  if(sprite_manager != NULL)
+  {
+    delete sprite_manager;
+    sprite_manager = NULL;
+  }
 
-  delete player_status;
-  player_status = NULL;
+  /* Free mouse-cursor */
+  if(mouse_cursor != NULL)
+  {
+    delete mouse_cursor;
+  }
 }
 
 /* EOF */