#include "Font.h"
#include "Sprite.h"
-#include "../geometry/operators.h"
-#include "../geometry/Point.h"
#include "../geometry/Vector.h"
#include <vector>
class Sprite;
-// TODO: animation when top row changes
template<class T>
class Menu {
void Reserve(int n) { entries.reserve(n); }
void Clear() { entries.clear(); }
- void Draw(SDL_Surface *dest, geometry::Point<int> position) const;
+ void Draw(SDL_Surface *dest, const geometry::Vector<int> &position) const;
private:
int GetRow(int index) const { return index / cols; }
template<class T>
-void Menu<T>::Draw(SDL_Surface *dest, geometry::Point<int> position) const {
+void Menu<T>::Draw(SDL_Surface *dest, const geometry::Vector<int> &position) const {
int start(topRow * cols);
int slots(rows * cols);
int items(entries.size() - start);