//
//  NSBezierPath_AMAdditons.h
//  PlateControl
//
//  Created by Andreas on Sun Jan 18 2004.
//  Copyright (c) 2004 Andreas Mayer. All rights reserved.
//
//	2005-05-23	Andreas Mayer
//	- added -appendBezierPathWithTriangleInRect:orientation: and +bezierPathWithTriangleInRect:orientation:


#import <AppKit/AppKit.h>

typedef NS_ENUM(uint8_t, AMTriangleOrientation) {
	AMTriangleUp = 0,
	AMTriangleDown,
	AMTriangleLeft,
	AMTriangleRight
} ;

typedef NS_ENUM(uint8_t, INLineArrowStyle) {
	INArrowStyle = 0,
	INCircleStyle,
	INOpenArrowStyle,
	INDiamondStyle,
	INPointYArrowStyle,

} ;

@interface NSBezierPath (AMAdditons)
+ (NSBezierPath*)bezierPathWithDimondInRect:(NSRect)rect;

+ (NSBezierPath*)bezierPathWithPlateInRect:(NSRect)rect;

- (void)appendBezierPathWithPlateInRect:(NSRect)rect;

+ (NSBezierPath*)bezierPathWithRoundedRect:(NSRect)rect cornerRadius:(CGFloat)radius;

+ (NSBezierPath*)bezierPathWithTopRoundedRect:(NSRect)rect radius:(CGFloat)radius;

+ (NSBezierPath*)bezierPathWithBottomRoundedRect:(NSRect)rect radius:(CGFloat)radius;

- (void)appendBezierPathWithRoundedRect:(NSRect)rect cornerRadius:(CGFloat)radius;


+ (NSBezierPath*)bezierPathWithTriangleInRect:(NSRect)aRect orientation:(AMTriangleOrientation)orientation;

- (void)appendBezierPathWithTriangleInRect:(NSRect)aRect orientation:(AMTriangleOrientation)orientation;

//+ (NSArray*)bezierPathWithLineArrowHeadOfstartPoint:(NSPoint)startPoint endPoint:(NSPoint)endPoint tailLineStyle:(INLineArrowStyle)lineTailStyle headLineStyle:(INLineArrowStyle)lineHeadStyle width:(float)lineWidth ;
+ (NSBezierPath*)bezierPathWithLineArrowHeadOfstartPoint:(NSPoint)startPoint endPoint:(NSPoint)endPoint headLineStyle:(INLineArrowStyle)lineHeadStyle width:(float)Width legth:(float)Length;
@end
