blob: 5d687282207b57951643681d3ae58527c045fe42 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
//
// GTMNSBezierPath+Shading.h
//
// Category for radial and axial stroke and fill functions for NSBezierPaths
//
// 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 <Cocoa/Cocoa.h>
#import "GTMDefines.h"
@protocol GTMShading;
//
/// Category for radial and axial stroke and fill functions for NSBezierPaths
//
@interface NSBezierPath (GTMBezierPathShadingAdditions)
/// Stroke the path axially with a color blend defined by |shading|.
//
/// The fill will extend from |fromPoint| to |toPoint| and will extend
/// indefinitely perpendicular to the axis of the line defined by the
/// two points. You can extend beyond the |fromPoint|/|toPoint by setting
/// |extendingStart|/|extendingEnd| respectively.
//
// Args:
// fromPoint: point to start the shading at
// toPoint: point to end the shading at
// extendingStart: should we extend the shading before |fromPoint| using
// the first color in our shading?
// extendingEnd: should we extend the shading after |toPoint| using the
// last color in our shading?
// shading: the shading to use to take our colors from.
//
- (void)gtm_strokeAxiallyFrom:(NSPoint)fromPoint to:(NSPoint)toPoint
extendingStart:(BOOL)extendingStart extendingEnd:(BOOL)extendingEnd
shading:(id<GTMShading>)shading;
/// Stroke the path radially with a color blend defined by |shading|.
//
/// The fill will extend from the circle with center |fromPoint|
/// and radius |fromRadius| to the circle with center |toPoint|
/// with radius |toRadius|.
/// You can extend beyond the |fromPoint|/|toPoint| by setting
/// |extendingStart|/|extendingEnd| respectively.
//
// Args:
// fromPoint: center of the circle to start the shading at
// fromRadius: radius of the circle to start the shading at
// toPoint: center of the circle to to end the shading at
// toRadius: raidus of the circle to end the shading at
// extendingStart: should we extend the shading before |fromPoint| using
// the first color in our shading?
// extendingEnd: should we extend the shading after |toPoint| using the
// last color in our shading?
// shading: the shading to use to take our colors from.
//
- (void)gtm_strokeRadiallyFrom:(NSPoint)fromPoint fromRadius:(CGFloat)fromRadius
to:(NSPoint)toPoint toRadius:(CGFloat)toRadius
extendingStart:(BOOL)extendingStart extendingEnd:(BOOL)extendingEnd
shading:(id<GTMShading>)shading;
/// Fill the path radially with a color blend defined by |shading|.
//
/// The fill will extend from the circle with center |fromPoint|
/// and radius |fromRadius| to the circle with center |toPoint|
/// with radius |toRadius|.
/// You can extend beyond the |fromPoint|/|toPoint by setting
/// |extendingStart|/|extendingEnd| respectively.
//
// Args:
// fromPoint: center of the circle to start the shading at
// fromRadius: radius of the circle to start the shading at
// toPoint: center of the circle to to end the shading at
// toRadius: radius of the circle to end the shading at
// extendingStart: should we extend the shading before |fromPoint| using
// the first color in our shading?
// extendingEnd: should we extend the shading after |toPoint| using the
// last color in our shading?
// shading: the shading to use to take our colors from.
//
- (void)gtm_fillAxiallyFrom:(NSPoint)fromPoint to:(NSPoint)toPoint
extendingStart:(BOOL)extendingStart extendingEnd:(BOOL)extendingEnd
shading:(id<GTMShading>)shading;
/// Fill the path radially with a color blend defined by |shading|.
//
/// The fill will extend from the circle with center |fromPoint|
/// and radius |fromRadius| to the circle with center |toPoint|
/// with radius |toRadius|.
/// You can extend beyond the |fromPoint|/|toPoint by setting
/// |extendingStart|/|extendingEnd| respectively.
//
// Args:
// fromPoint: center of the circle to start the shading at
// fromRadius: radius of the circle to start the shading at
// toPoint: center of the circle to to end the shading at
// toRadius: radius of the circle to end the shading at
// extendingStart: should we extend the shading before |fromPoint| using
// the first color in our shading?
// extendingEnd: should we extend the shading after |toPoint| using the
// last color in our shading?
// shading: the shading to use to take our colors from.
//
- (void)gtm_fillRadiallyFrom:(NSPoint)fromPoint fromRadius:(CGFloat)fromRadius
to:(NSPoint)toPoint toRadius:(CGFloat)toRadius
extendingStart:(BOOL)extendingStart extendingEnd:(BOOL)extendingEnd
shading:(id<GTMShading>)shading;
@end
|