X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Frendercontrol.hh;h=c619597fcd250b0141a80c6f9683d37af6221043;hb=f8edbc908370d1b00db027d03ade1566dbb3dd24;hp=cc05a3193815303fcc41c8149d5c6eeddc530ec4;hpb=0dcbf985c11c850b30b2983e1e20cd8cf033f054;p=chaz%2Fopenbox diff --git a/otk/rendercontrol.hh b/otk/rendercontrol.hh index cc05a319..c619597f 100644 --- a/otk/rendercontrol.hh +++ b/otk/rendercontrol.hh @@ -4,15 +4,30 @@ extern "C" { #include +#include } namespace otk { class ScreenInfo; +class Surface; +class RenderTexture; class RenderControl { protected: const ScreenInfo *_screen; + + int _red_bits; + int _green_bits; + int _blue_bits; + + // color tables, meaning, 256 (possibly) different shades of each color, + // based on the number of bits there are available for each color in the + // visual + unsigned char _red_color_table[256]; + unsigned char _green_color_table[256]; + unsigned char _blue_color_table[256]; + /* Bool _dither; @@ -52,7 +67,8 @@ public: static RenderControl *getRenderControl(int screen); - virtual void render(::Drawable d) = 0; + virtual void drawBackground(Surface *sf, + const RenderTexture &texture) const = 0; }; }