The AngleArc() function that was being used to draw circles on Windows turns
authorjacob <jacob@cda61777-01e9-0310-a592-d414129be87e>
Sat, 25 Jun 2005 13:24:19 +0000 (13:24 +0000)
committerjacob <jacob@cda61777-01e9-0310-a592-d414129be87e>
Sat, 25 Jun 2005 13:24:19 +0000 (13:24 +0000)
out to be unsupported on the Win9x/Me series. Use Arc() instead (tested on
Win98 and Win2K).

git-svn-id: svn://svn.tartarus.org/sgt/puzzles@6012 cda61777-01e9-0310-a592-d414129be87e

windows.c

index 67469b1..ae93983 100644 (file)
--- a/windows.c
+++ b/windows.c
@@ -342,10 +342,11 @@ void draw_circle(frontend *fe, int cx, int cy, int radius,
        SelectObject(fe->hdc_bm, oldpen);
     } else {
        HPEN oldpen = SelectObject(fe->hdc_bm, fe->pens[colour]);
-       MoveToEx(fe->hdc_bm, cx + radius, cy, NULL);
-       AngleArc(fe->hdc_bm, cx, cy, radius, 0.0F, 360.0F);
+        Arc(fe->hdc_bm, cx - radius, cy - radius,
+            cx + radius + 1, cy + radius + 1,
+            cx - radius, cy, cx - radius, cy);
        SelectObject(fe->hdc_bm, oldpen);
-    }    
+    }
 }
 
 void draw_polygon(frontend *fe, int *coords, int npoints,