]> git.tdb.fi Git - libs/gui.git/blobdiff - source/gbase/drawcontext.h
Hide the platform-specific parts of other classes as well
[libs/gui.git] / source / gbase / drawcontext.h
index 54ae3b364a0323d3b417844b12bac90486a9a746..1411294072bbe0625d63d63ff97b1b5114827436 100644 (file)
@@ -1,18 +1,13 @@
 /* $Id$
 
 This file is part of libmspgbase
-Copyright © 2007 Mikko Rasa, Mikkosoft Productions
+Copyright © 200 Mikko Rasa, Mikkosoft Productions
 Distributed under the LGPL
 */
 
 #ifndef MSP_GBASE_DRAWCONTEXT_H_
 #define MSP_GBASE_DRAWCONTEXT_H_
 
-#ifndef WIN32
-#include <X11/Xlib.h>
-#include <X11/extensions/XShm.h>
-#endif
-
 namespace Msp {
 namespace Graphics {
 
@@ -22,21 +17,19 @@ class Window;
 class DrawContext
 {
 private:
+       struct Private;
+
        Display &display;
        Window &window;
-#ifndef WIN32
-       XImage *image;
-       bool use_shm;
-       XShmSegmentInfo shminfo;
-#endif
+       Private *priv;
 
 public:
        DrawContext(Window &);
        ~DrawContext();
 
        Window &get_window() const { return window; }
-       unsigned get_depth() const { return image->bits_per_pixel; }
-       unsigned char *get_data() { return reinterpret_cast<unsigned char *>(image->data); }
+       unsigned get_depth() const;
+       unsigned char *get_data();
        void update();
 };