| 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 #include "SkPaint.h" | 9 #include "SkPaint.h" |
| 10 #include "SkAnnotation.h" | 10 #include "SkAnnotation.h" |
| (...skipping 2081 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2092 } | 2092 } |
| 2093 if (flatFlags & kHasEffects_FlatFlag) { | 2093 if (flatFlags & kHasEffects_FlatFlag) { |
| 2094 buffer.writeFlattenable(this->getPathEffect()); | 2094 buffer.writeFlattenable(this->getPathEffect()); |
| 2095 buffer.writeFlattenable(this->getShader()); | 2095 buffer.writeFlattenable(this->getShader()); |
| 2096 buffer.writeFlattenable(this->getXfermode()); | 2096 buffer.writeFlattenable(this->getXfermode()); |
| 2097 buffer.writeFlattenable(this->getMaskFilter()); | 2097 buffer.writeFlattenable(this->getMaskFilter()); |
| 2098 buffer.writeFlattenable(this->getColorFilter()); | 2098 buffer.writeFlattenable(this->getColorFilter()); |
| 2099 buffer.writeFlattenable(this->getRasterizer()); | 2099 buffer.writeFlattenable(this->getRasterizer()); |
| 2100 buffer.writeFlattenable(this->getLooper()); | 2100 buffer.writeFlattenable(this->getLooper()); |
| 2101 buffer.writeFlattenable(this->getImageFilter()); | 2101 buffer.writeFlattenable(this->getImageFilter()); |
| 2102 buffer.writeFlattenable(this->getAnnotation()); | 2102 |
| 2103 if (fAnnotation) { |
| 2104 buffer.writeBool(true); |
| 2105 fAnnotation->writeToBuffer(buffer); |
| 2106 } else { |
| 2107 buffer.writeBool(false); |
| 2108 } |
| 2103 } | 2109 } |
| 2104 #ifdef SK_BUILD_FOR_ANDROID | 2110 #ifdef SK_BUILD_FOR_ANDROID |
| 2105 if (flatFlags & kHasNonDefaultPaintOptionsAndroid_FlatFlag) { | 2111 if (flatFlags & kHasNonDefaultPaintOptionsAndroid_FlatFlag) { |
| 2106 this->getPaintOptionsAndroid().flatten(buffer); | 2112 this->getPaintOptionsAndroid().flatten(buffer); |
| 2107 } | 2113 } |
| 2108 #endif | 2114 #endif |
| 2109 } | 2115 } |
| 2110 | 2116 |
| 2111 void SkPaint::unflatten(SkFlattenableReadBuffer& buffer) { | 2117 void SkPaint::unflatten(SkFlattenableReadBuffer& buffer) { |
| 2112 fPrivFlags = 0; | 2118 fPrivFlags = 0; |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2173 | 2179 |
| 2174 if (flatFlags & kHasEffects_FlatFlag) { | 2180 if (flatFlags & kHasEffects_FlatFlag) { |
| 2175 SkSafeUnref(this->setPathEffect(buffer.readFlattenableT<SkPathEffect>())
); | 2181 SkSafeUnref(this->setPathEffect(buffer.readFlattenableT<SkPathEffect>())
); |
| 2176 SkSafeUnref(this->setShader(buffer.readFlattenableT<SkShader>())); | 2182 SkSafeUnref(this->setShader(buffer.readFlattenableT<SkShader>())); |
| 2177 SkSafeUnref(this->setXfermode(buffer.readFlattenableT<SkXfermode>())); | 2183 SkSafeUnref(this->setXfermode(buffer.readFlattenableT<SkXfermode>())); |
| 2178 SkSafeUnref(this->setMaskFilter(buffer.readFlattenableT<SkMaskFilter>())
); | 2184 SkSafeUnref(this->setMaskFilter(buffer.readFlattenableT<SkMaskFilter>())
); |
| 2179 SkSafeUnref(this->setColorFilter(buffer.readFlattenableT<SkColorFilter>(
))); | 2185 SkSafeUnref(this->setColorFilter(buffer.readFlattenableT<SkColorFilter>(
))); |
| 2180 SkSafeUnref(this->setRasterizer(buffer.readFlattenableT<SkRasterizer>())
); | 2186 SkSafeUnref(this->setRasterizer(buffer.readFlattenableT<SkRasterizer>())
); |
| 2181 SkSafeUnref(this->setLooper(buffer.readFlattenableT<SkDrawLooper>())); | 2187 SkSafeUnref(this->setLooper(buffer.readFlattenableT<SkDrawLooper>())); |
| 2182 SkSafeUnref(this->setImageFilter(buffer.readFlattenableT<SkImageFilter>(
))); | 2188 SkSafeUnref(this->setImageFilter(buffer.readFlattenableT<SkImageFilter>(
))); |
| 2183 SkSafeUnref(this->setAnnotation(buffer.readFlattenableT<SkAnnotation>())
); | 2189 |
| 2190 if (buffer.readBool()) { |
| 2191 this->setAnnotation(SkNEW_ARGS(SkAnnotation, (buffer)))->unref(); |
| 2192 } |
| 2184 } else { | 2193 } else { |
| 2185 this->setPathEffect(NULL); | 2194 this->setPathEffect(NULL); |
| 2186 this->setShader(NULL); | 2195 this->setShader(NULL); |
| 2187 this->setXfermode(NULL); | 2196 this->setXfermode(NULL); |
| 2188 this->setMaskFilter(NULL); | 2197 this->setMaskFilter(NULL); |
| 2189 this->setColorFilter(NULL); | 2198 this->setColorFilter(NULL); |
| 2190 this->setRasterizer(NULL); | 2199 this->setRasterizer(NULL); |
| 2191 this->setLooper(NULL); | 2200 this->setLooper(NULL); |
| 2192 this->setImageFilter(NULL); | 2201 this->setImageFilter(NULL); |
| 2193 } | 2202 } |
| (...skipping 401 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2595 case SkXfermode::kPlus_Mode: | 2604 case SkXfermode::kPlus_Mode: |
| 2596 return 0 == this->getAlpha(); | 2605 return 0 == this->getAlpha(); |
| 2597 case SkXfermode::kDst_Mode: | 2606 case SkXfermode::kDst_Mode: |
| 2598 return true; | 2607 return true; |
| 2599 default: | 2608 default: |
| 2600 break; | 2609 break; |
| 2601 } | 2610 } |
| 2602 } | 2611 } |
| 2603 return false; | 2612 return false; |
| 2604 } | 2613 } |
| OLD | NEW |