X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gdk%2Fx11%2Fgdkdrawable-x11.h;h=7ff60085a1a6e8cf5e27caa1af80af9e7f566de2;hb=89e187e7c1c3ce306b15d188e40be5f43fa821c9;hp=abdcbb42b9b407e0a838c0eeae523af28d5ae20b;hpb=425b9886c9e042bc4e8c789e6983127981aca6cf;p=~andy%2Fgtk diff --git a/gdk/x11/gdkdrawable-x11.h b/gdk/x11/gdkdrawable-x11.h index abdcbb42b..7ff60085a 100644 --- a/gdk/x11/gdkdrawable-x11.h +++ b/gdk/x11/gdkdrawable-x11.h @@ -27,21 +27,26 @@ #ifndef __GDK_DRAWABLE_X11_H__ #define __GDK_DRAWABLE_X11_H__ -#include +#include "config.h" #include -#ifdef HAVE_XFT +#include #include -#endif -#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; @@ -63,9 +68,8 @@ struct _GdkDrawableImplX11 Window xid; GdkScreen *screen; -#ifdef HAVE_XFT Picture picture; -#endif + cairo_surface_t *cairo_surface; }; struct _GdkDrawableImplX11Class @@ -76,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__ */