#define GRAPHICS_FONT_H_
#include "Sprite.h"
-#include "../geometry/Point.h"
+#include "../geometry/Vector.h"
#include <SDL.h>
class Font {
public:
- explicit Font(const Sprite *sprite, int digitsCol = 0, int digitsRow = 0) : sprite(sprite), digitsCol(digitsCol), digitsRow(digitsRow) { }
+ explicit Font(const Sprite *sprite, int colOffset = 0, int rowOffset = 0)
+ : sprite(sprite), colOffset(colOffset), rowOffset(rowOffset) {
+
+ }
public:
int CharWidth() const { return sprite->Width(); }
int CharHeight() const { return sprite->Height(); }
- void DrawDigit(int digit, SDL_Surface *dest, geometry::Point<int> position) const;
- void DrawNumber(int number, SDL_Surface *dest, geometry::Point<int> position, int digits = 0) const;
+ void DrawChar(char c, SDL_Surface *dest, const geometry::Vector<int> &position) const;
+ void DrawString(const char *s, SDL_Surface *dest, const geometry::Vector<int> &position, int maxChars = 0) const;
+ void DrawDigit(int d, SDL_Surface *dest, const geometry::Vector<int> &position) const;
+ void DrawNumber(int n, SDL_Surface *dest, const geometry::Vector<int> &position, int digits = 0) const;
private:
const Sprite *sprite;
- int digitsCol;
- int digitsRow;
+ int colOffset;
+ int rowOffset;
};