Mercurial > projects > dstep
view dstep/applicationservices/coregraphics/CGPath.d @ 12:9f0b49a2f64e
Added the ApplicationServices frameworks: ATS, ColorSync and CoreGraphics
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Mon, 03 Aug 2009 14:00:21 +0200 |
parents | |
children |
line wrap: on
line source
/** * Copyright: Copyright (c) 2009 Jacob Carlborg. * Authors: Jacob Carlborg * Version: Initial created: Aug 1, 2009 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) */ module dstep.applicationservices.coregraphics.CGPath; import dstep.corefoundation.CFBase; import dstep.applicationservices.coregraphics.CGAffineTransform; import dstep.applicationservices.coregraphics.CGBase; import dstep.applicationservices.coregraphics.CGGeometry; struct CGPath; alias CGPath* CGMutablePathRef; alias CGPath* CGPathRef; alias int CGPathElementType; extern (C) { alias void function (void*, CGPathElement*) CGPathApplierFunction; } enum /*CGPathElementType*/ { kCGPathElementMoveToPoint, kCGPathElementAddLineToPoint, kCGPathElementAddQuadCurveToPoint, kCGPathElementAddCurveToPoint, kCGPathElementCloseSubpath } struct CGPathElement { int type; CGPoint* points; } extern (C) { uint CGPathGetTypeID (); CGMutablePathRef CGPathCreateMutable (); CGPathRef CGPathCreateCopy (CGPathRef path); CGMutablePathRef CGPathCreateMutableCopy (CGPathRef path); CGPathRef CGPathRetain (CGPathRef path); void CGPathRelease (CGPathRef path); bool CGPathEqualToPath (CGPathRef path1, CGPathRef path2); void CGPathMoveToPoint (CGMutablePathRef path, CGAffineTransform* m, CGFloat x, CGFloat y); void CGPathAddLineToPoint (CGMutablePathRef path, CGAffineTransform* m, CGFloat x, CGFloat y); void CGPathAddQuadCurveToPoint (CGMutablePathRef path, CGAffineTransform* m, CGFloat cpx, CGFloat cpy, CGFloat x, CGFloat y); void CGPathAddCurveToPoint (CGMutablePathRef path, CGAffineTransform* m, CGFloat cp1x, CGFloat cp1y, CGFloat cp2x, CGFloat cp2y, CGFloat x, CGFloat y); void CGPathCloseSubpath (CGMutablePathRef path); void CGPathAddRect (CGMutablePathRef path, CGAffineTransform* m, CGRect rect); void CGPathAddRects (CGMutablePathRef path, CGAffineTransform* m, CGRect* rects, uint count); void CGPathAddLines (CGMutablePathRef path, CGAffineTransform* m, CGPoint* points, uint count); void CGPathAddEllipseInRect (CGMutablePathRef path, CGAffineTransform* m, CGRect rect); void CGPathAddArc (CGMutablePathRef path, CGAffineTransform* m, CGFloat x, CGFloat y, CGFloat radius, CGFloat startAngle, CGFloat endAngle, bool clockwise); void CGPathAddArcToPoint (CGMutablePathRef path, CGAffineTransform* m, CGFloat x1, CGFloat y1, CGFloat x2, CGFloat y2, CGFloat radius); void CGPathAddPath (CGMutablePathRef path1, CGAffineTransform* m, CGPathRef path2); bool CGPathIsEmpty (CGPathRef path); bool CGPathIsRect (CGPathRef path, CGRect* rect); CGPoint CGPathGetCurrentPoint (CGPathRef path); CGRect CGPathGetBoundingBox (CGPathRef path); bool CGPathContainsPoint (CGPathRef path, CGAffineTransform* m, CGPoint point, bool eoFill); void CGPathApply (CGPathRef path, void* info, CGPathApplierFunction function_); }