Fixed the ever-elusive crash when using lightmaps: Discard all lightmap requests...
[supertux.git] / src / gui / menu.cpp
index 9a16354..c86bd98 100644 (file)
@@ -490,7 +490,7 @@ void
 Menu::draw_item(DrawingContext& context, int index)
 {
   float menu_height = get_height();
-  float menu_width = get_width();
+  float menu_width  = get_width();
 
   MenuItem& pitem = *(items[index]);
 
@@ -524,6 +524,20 @@ Menu::draw_item(DrawingContext& context, int index)
       text_font = active_font;
     }
 
+  if(active_item == index)
+    {
+      context.draw_filled_rect(Rect(Vector(pos_x - menu_width/2 + 10 - 2, y_pos - 12 - 2),
+                                    Vector(pos_x + menu_width/2 - 10 + 2, y_pos + 12 + 2)),
+                               Color(1.0f, 1.0f, 1.0f, 0.5f),
+                               16.0f,
+                               LAYER_GUI-10);
+      context.draw_filled_rect(Rect(Vector(pos_x - menu_width/2 + 10, y_pos - 12),
+                                    Vector(pos_x + menu_width/2 - 10, y_pos + 12)),
+                               Color(1.0f, 1.0f, 1.0f, 0.5f),
+                               16.0f,
+                               LAYER_GUI-10);
+    }
+
   switch (pitem.kind)
     {
     case MN_DEACTIVE:
@@ -708,6 +722,12 @@ Menu::draw(DrawingContext& context)
   float menu_width  = get_width();
 
   /* Draw a transparent background */
+  context.draw_filled_rect(Rect(Vector(pos_x - menu_width/2-4, pos_y - 24*items.size()/2 - 10-4),
+                                Vector(pos_x + menu_width/2+4, pos_y - 24*items.size()/2 + 10 + menu_height+4)),
+                           Color(0.2f, 0.3f, 0.4f, 0.8f), 
+                           16.0f,
+                           LAYER_GUI-10);
+
   context.draw_filled_rect(Rect(Vector(pos_x - menu_width/2, pos_y - 24*items.size()/2 - 10),
                                 Vector(pos_x + menu_width/2, pos_y - 24*items.size()/2 + 10 + menu_height)),
                            Color(0.6f, 0.7f, 0.8f, 0.5f),