|
PieDock 1.6.0
|
00001 /* 00002 * O ,- 00003 * ° o . -´ ' ,- 00004 * ° .´ ` . ´,´ 00005 * ( ° )) . ( 00006 * `-;_ . -´ `.`. 00007 * `._' ´ 00008 * 00009 * Copyright (c) 2007-2010 Markus Fisch <mf@markusfisch.de> 00010 * 00011 * Licensed under the MIT license: 00012 * http://www.opensource.org/licenses/mit-license.php 00013 */ 00014 #ifndef _PieDock_XSurface_ 00015 #define _PieDock_XSurface_ 00016 00017 #include "Surface.h" 00018 #include "ArgbSurface.h" 00019 00020 #include <X11/Xlib.h> 00021 00022 namespace PieDock 00023 { 00029 class XSurface : public Surface 00030 { 00031 public: 00032 XSurface( int, int, Display *, Visual *, int ); 00033 virtual ~XSurface(); 00034 inline XImage *getResource() const { return resource; } 00035 inline Visual *getVisual() const { return visual; } 00036 00037 protected: 00038 virtual int determineBitsPerPixel( int ); 00039 virtual void allocateData(); 00040 virtual void freeData(); 00041 00042 private: 00043 Display *display; 00044 Visual *visual; 00045 int orginalDepth; 00046 XImage *resource; 00047 }; 00048 } 00049 00050 #endif
1.7.3