* Source/xlib/XGGState.m (-copyBits:fromRect:toPoint:): Draw

correctly when source and dest have different flip'ness.
(-_compositeGState:sourcefromRect:fromRecttoPoint:toPointop:opfraction:]):
Draw correctly when source is flipped.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@16747 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Adam Fedor 2003-05-19 03:58:09 +00:00
parent 8aa01a22f5
commit 1707acd988
2 changed files with 10 additions and 0 deletions

View file

@ -1,3 +1,10 @@
2003-05-18 Benhur Stein
* Source/xlib/XGGState.m (-copyBits:fromRect:toPoint:): Draw
correctly when source and dest have different flip'ness.
(-_compositeGState:sourcefromRect:fromRecttoPoint:toPointop:opfraction:]):
Draw correctly when source is flipped.
2003-05-18 00:03 Alexander Malmberg <alexander@malmberg.org>
* Source/art/GNUmakefile, Source/art/shfill.m: Implement basic

View file

@ -373,6 +373,8 @@ static Region emptyRegion;
flushRect.size = aRect.size;
flushRect.origin = aPoint;
dst = XGViewRectToX(self, flushRect);
if (source->ctm->matrix.m22 < 0 && ctm->matrix.m22 > 0) dst.y += src.height;
if (source->ctm->matrix.m22 > 0 && ctm->matrix.m22 < 0) dst.y -= src.height;
NSDebugLLog(@"XGGraphics", @"Copy area from %@ to %@",
NSStringFromRect(aRect), NSStringFromPoint(aPoint));
XCopyArea(XDPY, from, draw, xgcntxt,
@ -471,6 +473,7 @@ static Region emptyRegion;
flushRect.origin = [ctm pointInMatrixSpace: flushRect.origin];
drect = XGWindowRectToX(self, flushRect);
if (source->ctm->matrix.m22 < 0) drect.y += drect.height;
toXPoint.x = drect.x;
toXPoint.y = drect.y;