//
//  BXContactSheetCell.h
//  BXAppKit
//
//  Created by Michael Ehrmann on 06.09.04.
//  Copyright 2004 Boinx Software. All rights reserved.
//

// #import <Cocoa/Cocoa.h> //Imported in PrefixHeader

//#define showMethodNames
//#define debugScaling
//#define debugRects
//#define debugDrawing

extern CGFloat kShadowOffsetX;
extern CGFloat kShadowOffsetY;
extern CGFloat kShadowBlurRadius;
extern CGFloat kShadowColorRed;
extern CGFloat kShadowColorGreen;
extern CGFloat kShadowColorBlue;
extern CGFloat kShadowColorAlpha;
extern CGFloat kBackgroundColorThreshold;
extern CGFloat kBorderColorMaxBrightness;

@interface BXContactSheetCell : NSCell {
	NSString *imageName;
	
	BOOL drawImageNames;
	BOOL drawShadow;
	BOOL drawBorder;
	
	CGFloat selectionCornerRadius;
	
	NSColor *selectionColor;
	NSColor* backgroundColor;
	NSColor* imageNameColor;
	
	NSSize _originalSize;
	NSSize _innerPadding;
	
	NSRect _imageRect;
	NSRect _titleRect;
}

- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView;

- (NSRect)drawRectForBounds:(NSRect)theRect;
- (NSRect)imageRectForBounds:(NSRect)theRect;
- (NSRect)titleRectForBounds:(NSRect)theRect;

- (NSRect)currentImageRect;
- (NSRect)currentTitleRect;

- (NSString*)imageName;
- (void)setImageName:(NSString*)name;

- (BOOL)drawImageNames;
- (void)setDrawImageNames:(BOOL)value;
- (void)setImageNameColor:(NSColor*)value;
- (void)toggleDrawImageNames;

- (BOOL)drawShadow;
- (void)setDrawShadow:(BOOL)value;
- (void)toggleDrawShadow;

- (BOOL)drawBorder;
- (void)setDrawBorder:(BOOL)value;
- (void)toggleDrawBorder;

- (CGFloat)selectionCornerRadius;
- (void)setSelectionCornerRadius:(CGFloat)value;

- (NSColor*)selectionColor;
- (void)setSelectionColor:(NSColor*)value;

- (NSColor*)backgroundColor;
- (void)setBackgroundColor:(NSColor*)value;

- (NSSize)innerPadding;
- (void)setInnerPadding:(NSSize)value;
@end
