OLD | NEW |
---|---|
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 | 9 |
10 #include "SkDrawGradient.h" | 10 #include "SkDrawGradient.h" |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
119 } | 119 } |
120 | 120 |
121 #ifdef SK_DUMP_ENABLED | 121 #ifdef SK_DUMP_ENABLED |
122 void SkDrawLinearGradient::dump(SkAnimateMaker* maker) { | 122 void SkDrawLinearGradient::dump(SkAnimateMaker* maker) { |
123 dumpBase(maker); | 123 dumpBase(maker); |
124 dumpRest(maker); | 124 dumpRest(maker); |
125 } | 125 } |
126 #endif | 126 #endif |
127 | 127 |
128 SkShader* SkDrawLinearGradient::getShader() { | 128 SkShader* SkDrawLinearGradient::getShader() { |
129 if (addPrelude() == 0 || points.count() != 4) | 129 if (addPrelude() == 0 || points.count() != 4) { |
130 return nullptr; | 130 return nullptr; |
131 SkShader* shader = SkGradientShader::CreateLinear((SkPoint*)points.begin(), | 131 } |
132 return SkGradientShader::MakeLinear((SkPoint*)points.begin(), | |
132 fColors.begin(), offsets.begin(), fColors.count(), (SkShader::TileMode) tileMode, | 133 fColors.begin(), offsets.begin(), fColors.count(), (SkShader::TileMode) tileMode, |
133 0, getMatrix()); | 134 0, getMatrix()).release(); |
134 SkAutoTDelete<SkShader> autoDel(shader); | |
mtklein
2016/03/08 14:55:15
Was this just pointless?
reed1
2016/03/08 15:15:19
I think so
| |
135 (void)autoDel.detach(); | |
136 return shader; | |
137 } | 135 } |
138 | 136 |
139 | 137 |
140 #if SK_USE_CONDENSED_INFO == 0 | 138 #if SK_USE_CONDENSED_INFO == 0 |
141 | 139 |
142 const SkMemberInfo SkDrawRadialGradient::fInfo[] = { | 140 const SkMemberInfo SkDrawRadialGradient::fInfo[] = { |
143 SK_MEMBER_INHERITED, | 141 SK_MEMBER_INHERITED, |
144 SK_MEMBER(center, Point), | 142 SK_MEMBER(center, Point), |
145 SK_MEMBER(radius, Float) | 143 SK_MEMBER(radius, Float) |
146 }; | 144 }; |
147 | 145 |
148 #endif | 146 #endif |
149 | 147 |
150 DEFINE_GET_MEMBER(SkDrawRadialGradient); | 148 DEFINE_GET_MEMBER(SkDrawRadialGradient); |
151 | 149 |
152 SkDrawRadialGradient::SkDrawRadialGradient() : radius(0) { | 150 SkDrawRadialGradient::SkDrawRadialGradient() : radius(0) { |
153 center.set(0, 0); | 151 center.set(0, 0); |
154 } | 152 } |
155 | 153 |
156 #ifdef SK_DUMP_ENABLED | 154 #ifdef SK_DUMP_ENABLED |
157 void SkDrawRadialGradient::dump(SkAnimateMaker* maker) { | 155 void SkDrawRadialGradient::dump(SkAnimateMaker* maker) { |
158 dumpBase(maker); | 156 dumpBase(maker); |
159 dumpRest(maker); | 157 dumpRest(maker); |
160 } | 158 } |
161 #endif | 159 #endif |
162 | 160 |
163 SkShader* SkDrawRadialGradient::getShader() { | 161 SkShader* SkDrawRadialGradient::getShader() { |
164 if (addPrelude() == 0) | 162 if (addPrelude() == 0) { |
165 return nullptr; | 163 return nullptr; |
166 SkShader* shader = SkGradientShader::CreateRadial(center, | 164 } |
165 return SkGradientShader::MakeRadial(center, | |
167 radius, fColors.begin(), offsets.begin(), fColors.count(), (SkShader::Ti leMode) tileMode, | 166 radius, fColors.begin(), offsets.begin(), fColors.count(), (SkShader::Ti leMode) tileMode, |
168 0, getMatrix()); | 167 0, getMatrix()).release(); |
169 SkAutoTDelete<SkShader> autoDel(shader); | |
170 (void)autoDel.detach(); | |
171 return shader; | |
172 } | 168 } |
OLD | NEW |