+ wxCHECK_MSG( source, FALSE, "invalid source dc" );
+
+ wxClientDC *srcDC = (wxClientDC*)source;
+
+ wxBitmap bitmap( fwidth, fheight );
+
+#ifdef __WXGTK__
+ /* just take any GC so we don't have to create our own. */
+
+ GtkStyle *style = gtk_widget_get_default_style ();
+ GdkGC *gc = style->white_gc;
+
+ /* copy from either window or bitmap */
+
+ gdk_window_copy_area( bitmap.GetPixmap(), gc, 0, 0,
+ srcDC->GetWindow(),
+ xsrc, ysrc, fwidth, fheight );
+#endif
+
+ /* draw bitmap. scaling and positioning is done there */
+
+ DrawBitmap( bitmap, xdest, ydest );