X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Ftruerendercontrol.hh;h=e733a148f7ac4ea3186a3d24326deeeb74757c5d;hb=1e46a39dc305fe92b0c0eca1e60e76fded3e5214;hp=7da6f8be3671b708d26be19bcd533ae67d3f3edf;hpb=d4e4e25e2841d3aefc5dc13bab551d77b63590ea;p=chaz%2Fopenbox diff --git a/otk/truerendercontrol.hh b/otk/truerendercontrol.hh index 7da6f8be..e733a148 100644 --- a/otk/truerendercontrol.hh +++ b/otk/truerendercontrol.hh @@ -26,7 +26,19 @@ typedef uint16_t pixel16; #else typedef u_int32_t pixel32; typedef u_int16_t pixel16; -#endif +#endif /* HAVE_STDINT_H */ + +#ifdef WORDS_BIGENDIAN +const int default_red_shift=0; +const int default_green_shift=8; +const int default_blue_shift=16; +const int endian=MSBFirst; +#else +const int default_red_shift=16; +const int default_green_shift=8; +const int default_blue_shift=0; +const int endian=LSBFirst; +#endif /* WORDS_BIGENDIAN */ class TrueRenderControl : public RenderControl { private: @@ -41,16 +53,22 @@ private: int _green_offset; int _blue_offset; + inline void highlight(pixel32 *x, pixel32 *y, bool raised) const; + void reduceDepth(XImage *im, pixel32 *data) const; + void verticalGradient(Surface &sf, const RenderTexture &texture, + pixel32 *data) const; + void diagonalGradient(Surface &sf, const RenderTexture &texture, + pixel32 *data) const; + void crossDiagonalGradient(Surface &sf, const RenderTexture &texture, + pixel32 *data) const; + virtual void drawGradientBackground(Surface &sf, + const RenderTexture &texture) const; + public: TrueRenderControl(int screen); virtual ~TrueRenderControl(); virtual void drawBackground(Surface& sf, const RenderTexture &texture) const; - virtual void drawGradientBackground(Surface &sf, - const RenderTexture &texture) const; - - inline void highlight(pixel32 *x, pixel32 *y, bool raised) const; - void reduceDepth(XImage *im, pixel32 *data) const; }; }