]> Dogcows Code - chaz/openbox/blobdiff - otk/rendercontrol.hh
add new shit
[chaz/openbox] / otk / rendercontrol.hh
index cc05a3193815303fcc41c8149d5c6eeddc530ec4..c619597fcd250b0141a80c6f9683d37af6221043 100644 (file)
@@ -4,15 +4,30 @@
 
 extern "C" {
 #include <X11/Xlib.h>
+#include <X11/Xutil.h>
 }
 
 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;
 };
 
 }
This page took 0.020516 seconds and 4 git commands to generate.