summaryrefslogtreecommitdiff
path: root/gdk/win32/gdkgc-win32.c
diff options
context:
space:
mode:
authorIvan, Wong Yat Cheung <email@ivanwong.info>2005-03-11 23:50:21 +0000
committerTor Lillqvist <tml@src.gnome.org>2005-03-11 23:50:21 +0000
commitad24594d106f818e74ea976779ca328d5cdce07b (patch)
tree79e6ddf5eba572fdca8ffa99f908bd82162747a4 /gdk/win32/gdkgc-win32.c
parenta8a1f7b99aaa8926e7174ad1298e459c2ccb148a (diff)
downloadgtk+-ad24594d106f818e74ea976779ca328d5cdce07b.tar.gz
Big window fix for Win32. Big windows are still emulated within 16-bit
2005-03-12 Ivan, Wong Yat Cheung <email@ivanwong.info> Big window fix for Win32. Big windows are still emulated within 16-bit coordinate limits, though. Big windows now work on NT-based Windows. (#169989) * gdk/win32/gdkgc-win32.c (_gdk_win32_gdkregion_to_hrgn): Use 32-bit coordinates. * gdk/win32/gdkgeometry-win32.c: Largely rewrite. * gdk/win32/gdkwindow-win32.c: Minor related changes.
Diffstat (limited to 'gdk/win32/gdkgc-win32.c')
-rw-r--r--gdk/win32/gdkgc-win32.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/gdk/win32/gdkgc-win32.c b/gdk/win32/gdkgc-win32.c
index 1c58ba34f4..3b520417ce 100644
--- a/gdk/win32/gdkgc-win32.c
+++ b/gdk/win32/gdkgc-win32.c
@@ -1252,20 +1252,16 @@ _gdk_win32_gdkregion_to_hrgn (GdkRegion *region,
rgndata->rdh.iType = RDH_RECTANGLES;
rgndata->rdh.nCount = rgndata->rdh.nRgnSize = 0;
SetRect (&rgndata->rdh.rcBound,
- G_MAXSHORT, G_MAXSHORT, G_MINSHORT, G_MINSHORT);
+ G_MAXLONG, G_MAXLONG, G_MINLONG, G_MINLONG);
for (i = 0; i < region->numRects; i++)
{
rect = ((RECT *) rgndata->Buffer) + rgndata->rdh.nCount++;
- rect->left = CLAMP (boxes[i].x1 + x_origin,
- G_MINSHORT, G_MAXSHORT);
- rect->right = CLAMP (boxes[i].x2 + x_origin,
- G_MINSHORT, G_MAXSHORT);
- rect->top = CLAMP (boxes[i].y1 + y_origin,
- G_MINSHORT, G_MAXSHORT);
- rect->bottom = CLAMP (boxes[i].y2 + y_origin,
- G_MINSHORT, G_MAXSHORT);
+ rect->left = boxes[i].x1 + x_origin;
+ rect->right = boxes[i].x2 + x_origin;
+ rect->top = boxes[i].y1 + y_origin;
+ rect->bottom = boxes[i].y2 + y_origin;
if (rect->left < rgndata->rdh.rcBound.left)
rgndata->rdh.rcBound.left = rect->left;