Adds Arc, Chord, GetCharWidth, Pie, PolyPolygon, PolyPolyline, RoundRect,
SetPixel, hatched brushes and a stub for StretchDIBits to the PostScript
driver.

diff --git a/objects/dib.c b/objects/dib.c
index a19f841..72cea4d 100644
--- a/objects/dib.c
+++ b/objects/dib.c
@@ -1178,19 +1178,29 @@
                        INT32 heightSrc, const void *bits,
                        const BITMAPINFO *info, UINT32 wUsage, DWORD dwRop )
 {
-    HBITMAP32 hBitmap, hOldBitmap;
-    HDC32 hdcMem;
+    DC *dc = DC_GetDCPtr( hdc );
+    if(!dc) return FALSE;
 
-    hBitmap = CreateDIBitmap32( hdc, &info->bmiHeader, CBM_INIT,
-                                bits, info, wUsage );
-    hdcMem = CreateCompatibleDC32( hdc );
-    hOldBitmap = SelectObject32( hdcMem, hBitmap );
-    StretchBlt32( hdc, xDst, yDst, widthDst, heightDst,
-                  hdcMem, xSrc, ySrc, widthSrc, heightSrc, dwRop );
-    SelectObject32( hdcMem, hOldBitmap );
-    DeleteDC32( hdcMem );
-    DeleteObject32( hBitmap );
-    return heightSrc;
+    if(dc->funcs->pStretchDIBits)
+    	   return dc->funcs->pStretchDIBits(dc, xDst, yDst, widthDst, 
+					    heightDst, xSrc, ySrc, widthSrc,
+					    heightSrc, bits, info, wUsage,
+					    dwRop);
+    else { /* use StretchBlt32 */
+        HBITMAP32 hBitmap, hOldBitmap;
+	HDC32 hdcMem;
+    
+	hBitmap = CreateDIBitmap32( hdc, &info->bmiHeader, CBM_INIT,
+				    bits, info, wUsage );
+	hdcMem = CreateCompatibleDC32( hdc );
+	hOldBitmap = SelectObject32( hdcMem, hBitmap );
+	StretchBlt32( hdc, xDst, yDst, widthDst, heightDst,
+		      hdcMem, xSrc, ySrc, widthSrc, heightSrc, dwRop );
+	SelectObject32( hdcMem, hOldBitmap );
+	DeleteDC32( hdcMem );
+	DeleteObject32( hBitmap );
+	return heightSrc;
+    }
 }