X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fgraphics%2FGauge.h;h=3251ec2e0eccf0b7a9d11cce4966ae307964db32;hb=f6d399c08f0878459bcd1c6b3f4958f300243a71;hp=95b4b5b580cf738cd2a22c7296a5819fac2561fa;hpb=cf20874f973521e84fc2aaa6cd47c56a278d9de7;p=l2e.git diff --git a/src/graphics/Gauge.h b/src/graphics/Gauge.h index 95b4b5b..3251ec2 100644 --- a/src/graphics/Gauge.h +++ b/src/graphics/Gauge.h @@ -8,7 +8,7 @@ #ifndef GRAPHICS_GAUGE_H_ #define GRAPHICS_GAUGE_H_ -#include "../geometry/Point.h" +#include "../geometry/Vector.h" #include @@ -17,20 +17,27 @@ namespace graphics { class Gauge { public: - Gauge(SDL_Surface *s, int fullX, int fullY, int emptyX, int emptyY, int height, int startWidth, int repeatWidth, int endWidth) - : surface(s), fullX(fullX), fullY(fullY), emptyX(emptyX), emptyY(emptyY), height(height), startWidth(startWidth), repeatWidth(repeatWidth), endWidth(endWidth) { } + explicit Gauge(SDL_Surface *s = 0, int fullX = 0, int fullY = 0, int emptyX = 0, int emptyY = 0, int height = 1, int startWidth = 0, int repeatWidth = 1, int endWidth = 0) + : surface(s), fullOffset(fullX, fullY), emptyOffset(emptyX, emptyY), height(height), startWidth(startWidth), repeatWidth(repeatWidth), endWidth(endWidth) { } public: int MinWidth() const { return startWidth + endWidth; } int Height() const { return height; } - void Draw(SDL_Surface *dest, geometry::Point position, int width, int filled) const; + void Draw(SDL_Surface *dest, const geometry::Vector &position, int width, Uint8 fill) const; + +public: + void SetSurface(SDL_Surface *s) { surface = s; } + void SetFullOffset(const geometry::Vector &o) { fullOffset = o; } + void SetEmptyOffset(const geometry::Vector &o) { emptyOffset = o; } + void SetHeight(int h) { height = h; } + void SetStartWidth(int w) { startWidth = w; } + void SetRepeatWidth(int w) { repeatWidth = w; } + void SetEndWidth(int w) { endWidth = w; } private: SDL_Surface *surface; - int fullX; - int fullY; - int emptyX; - int emptyY; + geometry::Vector fullOffset; + geometry::Vector emptyOffset; int height; int startWidth; int repeatWidth;