* From now on, there is UTF-8 decoding in the Font class. It should support all chara...
[supertux.git] / src / gui / menu.h
index d7a0e72..f3e621e 100644 (file)
 #include <set>
 #include <string>
 #include <utility>
+#include <assert.h>
 
 #include "SDL.h"
 
 #include "video/surface.h"
 #include "video/font.h"
-#include "special/timer.h"
 #include "mousecursor.h"
 
 bool confirm_dialog(Surface* background, std::string text);
@@ -75,13 +75,12 @@ public:
 
 private:
   /// copy-construction not allowed
-  MenuItem(const MenuItem& other) { assert(false); }
+  MenuItem(const MenuItem& ) { assert(false); }
   /// assignment not allowed
-  void operator= (const MenuItem& other) { assert(false); }
+  void operator= (const MenuItem& ) { assert(false); }
 
   /// keyboard key or joystick button
   bool input_flickering;
-  Timer input_flickering_timer;
 };
 
 class Menu
@@ -118,7 +117,7 @@ private:
   };
   
   /** Number of the item that got 'hit' (ie. pressed) in the last
-      event()/action() call, -1 if none */
+      event()/update() call, -1 if none */
   int hit_item;
   
   // position of the menu (ie. center of the menu, not top/left)
@@ -131,7 +130,7 @@ private:
   /* input implementation variables */
   int delete_character;
   char mn_input_char;
-  Timer repeat_timer;
+  Uint32 menu_repeat_ticks;
 
 public:
   static Font* default_font;
@@ -143,7 +142,7 @@ public:
   std::vector<MenuItem*> items;
   
   Menu();
-  ~Menu();
+  virtual ~Menu();
   
   void add_hl();
   void add_label(const std::string& text);
@@ -157,7 +156,7 @@ public:
 
   virtual void menu_action(MenuItem* item);
   
-  void action();
+  void update();
   
   /** Remove all entries from the menu */
   void clear();
@@ -191,7 +190,7 @@ protected:
 private:
   void check_controlfield_change_event(const SDL_Event& event);  
   void draw_item(DrawingContext& context, int index);
-  Timer effect;
+  Uint32 effect_ticks;
   int arrange_left;
   int active_item;
 };