// // GTMNSBezierPath+RoundRect.h // // Category for adding utility functions for creating // round rectangles. // // Copyright 2006-2008 Google Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); you may not // use this file except in compliance with the License. You may obtain a copy // of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the // License for the specific language governing permissions and limitations under // the License. // #import #import "GTMDefines.h" /// Category for adding utility functions for creating round rectangles. @interface NSBezierPath (GMBezierPathRoundRectAdditions) /// Inscribe a round rectangle inside of rectangle |rect| with a corner radius of |radius| // // Args: // rect: outer rectangle to inscribe into // radius: radius of the corners. |radius| is clamped internally // to be no larger than the smaller of half |rect|'s width or height // // Returns: // Auto released NSBezierPath + (NSBezierPath *)gtm_bezierPathWithRoundRect:(NSRect)rect cornerRadius:(CGFloat)radius; /// Inscribe a round rectangle inside of rectangle |rect| with corner radii specified // // Args: // rect: outer rectangle to inscribe into // radius*: radii of the corners // // Returns: // Auto released NSBezierPath + (NSBezierPath *)gtm_bezierPathWithRoundRect:(NSRect)rect topLeftCornerRadius:(CGFloat)radiusTL topRightCornerRadius:(CGFloat)radiusTR bottomLeftCornerRadius:(CGFloat)radiusBL bottomRightCornerRadius:(CGFloat)radiusBR; /// Adds a path which is a round rectangle inscribed inside of rectangle |rect| with a corner radius of |radius| // // Args: // rect: outer rectangle to inscribe into // radius: radius of the corners. |radius| is clamped internally // to be no larger than the smaller of half |rect|'s width or height - (void)gtm_appendBezierPathWithRoundRect:(NSRect)rect cornerRadius:(CGFloat)radius; /// Adds a path which is a round rectangle inscribed inside of rectangle |rect| with a corner radii specified // // Args: // rect: outer rectangle to inscribe into // radius*: radii of the corners - (void)gtm_appendBezierPathWithRoundRect:(NSRect)rect topLeftCornerRadius:(CGFloat)radiusTL topRightCornerRadius:(CGFloat)radiusTR bottomLeftCornerRadius:(CGFloat)radiusBL bottomRightCornerRadius:(CGFloat)radiusBR; @end