Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

bcpixmap.h

Go to the documentation of this file.
00001 #ifndef BCPIXMAP_H
00002 #define BCPIXMAP_H
00003 
00004 #include <X11/Xlib.h>
00005 #ifdef HAVE_XFT
00006 #include <X11/Xft/Xft.h>
00007 #endif
00008 #include "bcbitmap.inc"
00009 #include "bcpixmap.inc"
00010 #include "bcwindowbase.inc"
00011 #include "vframe.inc"
00012 
00013 class BC_Pixmap
00014 {
00015 public:
00016         BC_Pixmap(BC_WindowBase *parent_window, 
00017                 VFrame *frame, 
00018                 int mode = PIXMAP_OPAQUE,
00019                 int icon_offset = 0);
00020         BC_Pixmap(BC_WindowBase *parent_window, 
00021                 int w, 
00022                 int h);
00023         ~BC_Pixmap();
00024 
00025         friend class BC_WindowBase;
00026 
00027         void resize(int w, int h);
00028         void copy_area(int x, int y, int w, int h, int x2, int y2);
00029         int write_drawable(Drawable &pixmap,
00030                         int dest_x, 
00031                         int dest_y,
00032                         int dest_w = -1,
00033                         int dest_h = -1, 
00034                         int src_x = -1,
00035                         int src_y = -1);
00036         void draw_vframe(VFrame *frame, 
00037                         int dest_x = 0, 
00038                         int dest_y = 0, 
00039                         int dest_w = -1, 
00040                         int dest_h = -1,
00041                         int src_x = 0,
00042                         int src_y = 0);
00043         void draw_pixmap(BC_Pixmap *pixmap, 
00044                 int dest_x = 0, 
00045                 int dest_y = 0, 
00046                 int dest_w = -1, 
00047                 int dest_h = -1,
00048                 int src_x = 0,
00049                 int src_y = 0);
00050         int get_w();
00051         int get_h();
00052         int get_w_fixed();
00053         int get_h_fixed();
00054         Pixmap get_pixmap();
00055         Pixmap get_alpha();
00056         int use_alpha();
00057         int use_opaque();
00058 
00059 private:
00060         int initialize(BC_WindowBase *parent_window, int w, int h, int mode);
00061 
00062         BC_WindowBase *parent_window;
00063         BC_WindowBase *top_level;
00064         Pixmap opaque_pixmap, alpha_pixmap;
00065 //#ifdef HAVE_XFT
00066 //      XftDraw *opaque_xft_draw, *alpha_xft_draw;
00067 //#endif
00068         void *opaque_xft_draw, *alpha_xft_draw;
00069         int w, h;
00070         int mode;
00071         GC alpha_gc, copy_gc;
00072 };
00073 
00074 
00075 #endif

Generated on Sun Jan 8 13:26:32 2006 for Guicast-svn by  doxygen 1.4.4