Revision: 13126 http://sourceforge.net/p/skim-app/code/13126 Author: hofman Date: 2022-10-24 09:09:00 +0000 (Mon, 24 Oct 2022) Log Message: ----------- convenience inline function to transform a rect
Modified Paths: -------------- trunk/NSGeometry_SKExtensions.h trunk/PDFPage_SKExtensions.m trunk/SKImageToolTipContext.m trunk/SKPDFView.m Modified: trunk/NSGeometry_SKExtensions.h =================================================================== --- trunk/NSGeometry_SKExtensions.h 2022-10-23 23:36:28 UTC (rev 13125) +++ trunk/NSGeometry_SKExtensions.h 2022-10-24 09:09:00 UTC (rev 13126) @@ -148,6 +148,10 @@ return NSWidth(r) > 0.0 && NSHeight(r) > 0.0 ? r : NSZeroRect; } +static inline NSRect SKTransformRect(NSAffineTransform *transform, NSRect rect) { + return SKRectFromPoints([transform transformPoint:SKBottomLeftPoint(rect)], [transform transformPoint:SKTopRightPoint(rect)]); +} + #pragma mark - extern NSPoint SKConstrainPointInRect(NSPoint point, NSRect boundary); Modified: trunk/PDFPage_SKExtensions.m =================================================================== --- trunk/PDFPage_SKExtensions.m 2022-10-23 23:36:28 UTC (rev 13125) +++ trunk/PDFPage_SKExtensions.m 2022-10-24 09:09:00 UTC (rev 13126) @@ -296,7 +296,7 @@ return nil; NSAffineTransform *transform = [self affineTransformForBox:box]; - NSRect sourceRect = SKRectFromPoints([transform transformPoint:SKBottomLeftPoint(rect)], [transform transformPoint:SKTopRightPoint(rect)]); + NSRect sourceRect = SKTransformRect(transform, rect); NSRect destRect = sourceRect; destRect.origin = NSZeroPoint; Modified: trunk/SKImageToolTipContext.m =================================================================== --- trunk/SKImageToolTipContext.m 2022-10-23 23:36:28 UTC (rev 13125) +++ trunk/SKImageToolTipContext.m 2022-10-24 09:09:00 UTC (rev 13126) @@ -127,7 +127,7 @@ if ([pageSelection hasCharacters]) { NSRect selBounds = [pageSelection boundsForPage:page]; - selBounds = SKRectFromPoints([transform transformPoint:SKBottomLeftPoint(selBounds)], [transform transformPoint:SKTopRightPoint(selBounds)]); + selBounds = SKTransformRect(transform, selBounds); sourceRect.origin.x = fmax(floor(NSMinX(selBounds)), fmin(floor(NSMaxX(selBounds) - NSWidth(sourceRect)), NSMinX(sourceRect))); sourceRect.origin.y = fmin(ceil(NSMaxY(selBounds)), fmax(ceil(NSMinY(selBounds) + NSHeight(sourceRect)), NSMaxY(sourceRect))) - NSHeight(sourceRect); } Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2022-10-23 23:36:28 UTC (rev 13125) +++ trunk/SKPDFView.m 2022-10-24 09:09:00 UTC (rev 13126) @@ -4899,7 +4899,7 @@ NSPoint pageOrigin = pageRect.origin; NSAffineTransform *pageTransform; - pageRect = SKRectFromPoints([transform transformPoint:SKBottomLeftPoint(pageRect)], [transform transformPoint:SKTopRightPoint(pageRect)]); + pageRect = SKTransformRect(transform, pageRect); // only draw the page when there is something to draw if (NSIntersectsRect(imageRect, pageRect) == NO) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. _______________________________________________ Skim-app-commit mailing list Skim-app-commit@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/skim-app-commit