X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=lib%2Fvideo%2Fscreen.h;h=93c0bfae7a0e1a0e1400c0a0b32856016e9e5be4;hb=4adec13cbf57960a4106b5140d52c14d0283eed3;hp=263bdae42feb0519cc43ac6d9f26340882623838;hpb=9c511ea692d3a2339597211f08f18ea74fad35ec;p=supertux.git diff --git a/lib/video/screen.h b/lib/video/screen.h index 263bdae42..93c0bfae7 100644 --- a/lib/video/screen.h +++ b/lib/video/screen.h @@ -25,40 +25,56 @@ #include #endif #include -class Color -{ -public: - Color() - : red(0), green(0), blue(0), alpha(255) - {} - - Color(Uint8 red_, Uint8 green_, Uint8 blue_, Uint8 alpha_ = 255) - : red(red_), green(green_), blue(blue_), alpha(alpha_) - {} - Color(const Color& o) - : red(o.red), green(o.green), blue(o.blue), alpha(o.alpha) - { } +#include - bool operator==(const Color& o) - { if(red == o.red && green == o.green && - blue == o.blue && alpha == o.alpha) - return true; - return false; } +namespace SuperTux + { + + /// Color RGBA + /** Stores 8bit RGBA values. */ + class Color + { + public: + Color() + : red(0), green(0), blue(0), alpha(255) + {} - Uint8 red, green, blue, alpha; -}; + Color(Uint8 red_, Uint8 green_, Uint8 blue_, Uint8 alpha_ = 255) + : red(red_), green(green_), blue(blue_), alpha(alpha_) + {} -#include "video/surface.h" + Color(std::vector color) + : red(0), green(0), blue(0), alpha(255) + { if(color.size() >= 3) { red = color[0]; green = color[1]; blue = color[2]; } + if(color.size() == 4) alpha = color[3]; } -class Vector; + Color(const Color& o) + : red(o.red), green(o.green), blue(o.blue), alpha(o.alpha) + { } -void putpixel(SDL_Surface *surface, int x, int y, Uint32 pixel); -void drawpixel(int x, int y, Uint32 pixel); -void fillrect(float x, float y, float w, float h, int r, int g, int b, int a = 255); -void draw_line(float x1, float y1, float x2, int r, int g, int b, int a = 255); + bool operator==(const Color& o) + { + if(red == o.red && green == o.green && + blue == o.blue && alpha == o.alpha) + return true; + return false; + } -void fadeout(int fade_time); -void shrink_fade(const Vector& point, int fade_time); + Uint8 red, green, blue, alpha; + }; + + + class Vector; + + void putpixel(SDL_Surface *surface, int x, int y, Uint32 pixel); + void drawpixel(int x, int y, Uint32 pixel); + void fillrect(float x, float y, float w, float h, int r, int g, int b, int a = 255); + void draw_line(float x1, float y1, float x2, float y2, int r, int g, int b, int a = 255); + + void fadeout(int fade_time); + void shrink_fade(const Vector& point, int fade_time); + +} //namespace SuperTux #endif /*SUPERTUX_SCREEN_H*/