Mercurial > dwindows
changeset 1284:8cb3650eb242
Fixed ellipses in GTK2.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Mon, 31 Oct 2011 06:06:09 +0000 |
parents | 87d6d11b6323 |
children | 2c04a56eaf63 |
files | gtk/dw.c |
diffstat | 1 files changed, 5 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/gtk/dw.c Mon Oct 31 03:03:07 2011 +0000 +++ b/gtk/dw.c Mon Oct 31 06:06:09 2011 +0000 @@ -8076,6 +8076,8 @@ double dx = xorigin - x1; double dy = yorigin - y1; double r = sqrt(dx*dx + dy*dy); + int width = (int)(r*2); + int height = width; DW_MUTEX_LOCK; if(handle) @@ -8116,6 +8118,8 @@ { radius1 = 0.0; radius2 = 360.0; + width = x2-x1; + height = y2-y1; } else { @@ -8127,7 +8131,7 @@ while (alpha2 <= 0) alpha2 += 360*64; while (alpha1 > 360*64) alpha1 -= 360*64; - gdk_draw_arc(handle ? handle->window : pixmap->pixmap, gc, FALSE, xorigin-r, yorigin-r, 2*r,2*r, alpha1, alpha2); + gdk_draw_arc(handle ? handle->window : pixmap->pixmap, gc, FALSE, xorigin-(width/2), yorigin-(height/2), width, height, alpha1, alpha2); gdk_gc_unref(gc); } DW_MUTEX_UNLOCK;