X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gdk%2Fx11%2Fgdkdrawable-x11.h;h=7ff60085a1a6e8cf5e27caa1af80af9e7f566de2;hb=89e187e7c1c3ce306b15d188e40be5f43fa821c9;hp=ea99938b3c6e832559c95dbb67086e60c7388c9f;hpb=88c1c94651750789dcad613ee8b09024df142ba2;p=~andy%2Fgtk diff --git a/gdk/x11/gdkdrawable-x11.h b/gdk/x11/gdkdrawable-x11.h index ea99938b3..7ff60085a 100644 --- a/gdk/x11/gdkdrawable-x11.h +++ b/gdk/x11/gdkdrawable-x11.h @@ -27,20 +27,26 @@ #ifndef __GDK_DRAWABLE_X11_H__ #define __GDK_DRAWABLE_X11_H__ -#include +#include "config.h" #include #include -#include +#include -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ +G_BEGIN_DECLS /* Drawable implementation for X11 */ +typedef enum +{ + GDK_X11_FORMAT_NONE, + GDK_X11_FORMAT_EXACT_MASK, + GDK_X11_FORMAT_ARGB_MASK, + GDK_X11_FORMAT_ARGB +} GdkX11FormatType; + typedef struct _GdkDrawableImplX11 GdkDrawableImplX11; typedef struct _GdkDrawableImplX11Class GdkDrawableImplX11Class; @@ -62,7 +68,8 @@ struct _GdkDrawableImplX11 Window xid; GdkScreen *screen; - XftDraw *xft_draw; + Picture picture; + cairo_surface_t *cairo_surface; }; struct _GdkDrawableImplX11Class @@ -73,8 +80,19 @@ struct _GdkDrawableImplX11Class GType _gdk_drawable_impl_x11_get_type (void); -#ifdef __cplusplus -} -#endif /* __cplusplus */ +void _gdk_x11_convert_to_format (guchar *src_buf, + gint src_rowstride, + guchar *dest_buf, + gint dest_rowstride, + GdkX11FormatType dest_format, + GdkByteOrder dest_byteorder, + gint width, + gint height); + +/* Note that the following take GdkDrawableImplX11, not the wrapper drawable */ +void _gdk_x11_drawable_finish (GdkDrawable *drawable); +void _gdk_x11_drawable_update_size (GdkDrawable *drawable); + +G_END_DECLS #endif /* __GDK_DRAWABLE_X11_H__ */