]> git.localhorst.tv Git - l2e.git/blobdiff - src/graphics/Font.h
removed stupid file headers that eclipse put in
[l2e.git] / src / graphics / Font.h
index 571431df74dca406a73572c881669eda69208513..c879dcedf73e4fc8a6803cac9651e1e7c0e538af 100644 (file)
@@ -1,10 +1,3 @@
-/*
- * Font.h
- *
- *  Created on: Aug 8, 2012
- *      Author: holy
- */
-
 #ifndef GRAPHICS_FONT_H_
 #define GRAPHICS_FONT_H_
 
@@ -17,6 +10,9 @@ namespace graphics {
 
 class Font {
 
+public:
+       static const int TYPE_ID = 404;
+
 public:
        explicit Font(const Sprite *sprite = 0, int colOffset = 0, int rowOffset = 0)
        : sprite(sprite), colOffset(colOffset), rowOffset(rowOffset) {
@@ -26,16 +22,24 @@ public:
 public:
        int CharWidth() const { return sprite->Width(); }
        int CharHeight() const { return sprite->Height(); }
+       int StringWidth(const char *) const;
+       int StringHeight(const char *) 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 DrawString(const char *s, SDL_Surface *dest, const geometry::Vector<int> &position, int maxWidth = 0) const;
+       void DrawStringRight(const char *s, SDL_Surface *dest, const geometry::Vector<int> &position, int maxWidth = 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;
+       void DrawNumberRight(int n, SDL_Surface *dest, const geometry::Vector<int> &position, int digits = 0) const;
 
 public:
        void SetSprite(const Sprite *s) { sprite = s; }
        void SetColOffset(int n) { colOffset = n; }
        void SetRowOffset(int n) { rowOffset = n; }
 
+       static void CreateTypeDescription();
+       static void Construct(void *);
+
 private:
        const Sprite *sprite;
        int colOffset;