+#endif // __WXGTK20__
+
+void *wxBitmap::GetRawData(wxPixelDataBase& data, int bpp)
+{
+#ifdef __WXGTK20__
+    if (bpp != 32)
+        return NULL;
+        
+    GdkPixbuf *pixbuf = GetPixbuf();
+    if (!pixbuf)
+        return NULL;
+
+#if 0    
+    if (gdk_pixbuf_get_has_alpha( pixbuf ))
+        wxPrintf( wxT("Has alpha\n") );
+    else
+        wxPrintf( wxT("No alpha.\n") );
+#endif
+
+       data.m_height = gdk_pixbuf_get_height( pixbuf );
+       data.m_width = gdk_pixbuf_get_width( pixbuf );
+       data.m_stride = gdk_pixbuf_get_rowstride( pixbuf );
+    
+    return gdk_pixbuf_get_pixels( pixbuf );
+#else
+    return NULL;
+#endif    
+}
+
+void wxBitmap::UngetRawData(wxPixelDataBase& data)
+{
+}
+
+
+bool wxBitmap::HasAlpha() const 
+{
+#ifdef __WXGTK20__
+    return HasPixbuf();
+#else
+    return false;
+#endif
+}
+
+void wxBitmap::UseAlpha()
+{ 
+#ifdef __WXGTK20__
+    GetPixbuf();
+#endif
+}
+