Removing the use of private CoreGraphics APIs to draw shadows, and replacing with...
[ITKit.git] / ITImageCell.h
1 /*
2  *      ITKit
3  *      ITImageCell.h
4  *
5  *      Custom NSImageCell subclass that casts a shadow and provides smooth scaling.
6  *
7  *      Copyright (c) 2010 iThink Software
8  *
9  */
10
11 #import <Cocoa/Cocoa.h>
12
13 @interface ITImageCell : NSImageCell {
14         BOOL _scalesSmoothly;
15         BOOL castsShadow;
16         float shadowAzimuth;
17         float shadowAmbient;
18         float shadowHeight;
19         float shadowRadius;
20 }
21
22 - (BOOL)scalesSmoothly;
23 - (void)setScalesSmoothly:(BOOL)flag;
24
25 - (BOOL)castsShadow;
26 - (void)setCastsShadow:(BOOL)newSetting;
27
28 - (float)shadowElevation; /* Light source elevation in degrees. Always 45.0 */
29 - (void)setShadowElevation:(float)newElevation; /* NOOP */
30
31 - (float)shadowAzimuth; /* Light source azimuth in degrees. Defaults to 90.0 */
32 - (void)setShadowAzimuth:(float)newAzimuth;
33
34 - (float)shadowAmbient; /* Amount of ambient light. Defaults to 0.15 */
35 - (void)setShadowAmbient:(float)newAmbient;
36
37 - (float)shadowHeight; /* Height above the canvas. Defaults to 1.0 */
38 - (void)setShadowHeight:(float)newHeight;
39
40 - (float)shadowRadius; /* Blur radius. Defaults to 4.0 */
41 - (void)setShadowRadius:(float)newRadius;
42
43 - (float)shadowSaturation; /* Maximum saturation. Always 1.0 */
44 - (void)setShadowSaturation:(float)newSaturation; /* NOOP */
45
46 @end