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 2020 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2031 asint(this->getShader()) | | 2031 asint(this->getShader()) | |
2032 asint(this->getXfermode()) | | 2032 asint(this->getXfermode()) | |
2033 asint(this->getMaskFilter()) | | 2033 asint(this->getMaskFilter()) | |
2034 asint(this->getColorFilter()) | | 2034 asint(this->getColorFilter()) | |
2035 asint(this->getRasterizer()) | | 2035 asint(this->getRasterizer()) | |
2036 asint(this->getLooper()) | | 2036 asint(this->getLooper()) | |
2037 asint(this->getAnnotation()) | | 2037 asint(this->getAnnotation()) | |
2038 asint(this->getImageFilter())) { | 2038 asint(this->getImageFilter())) { |
2039 flatFlags |= kHasEffects_FlatFlag; | 2039 flatFlags |= kHasEffects_FlatFlag; |
2040 } | 2040 } |
2041 #if SK_BUILD_FOR_ANDROID | 2041 #ifdef SK_BUILD_FOR_ANDROID |
2042 if (this->getPaintOptionsAndroid() != SkPaintOptionsAndroid()) { | 2042 if (this->getPaintOptionsAndroid() != SkPaintOptionsAndroid()) { |
2043 flatFlags |= kHasNonDefaultPaintOptionsAndroid_FlatFlag; | 2043 flatFlags |= kHasNonDefaultPaintOptionsAndroid_FlatFlag; |
2044 } | 2044 } |
2045 #endif | 2045 #endif |
2046 | 2046 |
2047 if (buffer.isOrderedBinaryBuffer()) { | 2047 if (buffer.isOrderedBinaryBuffer()) { |
2048 SkASSERT(SkAlign4(kPODPaintSize) == kPODPaintSize); | 2048 SkASSERT(SkAlign4(kPODPaintSize) == kPODPaintSize); |
2049 uint32_t* ptr = buffer.getOrderedBinaryBuffer()->reserve(kPODPaintSize); | 2049 uint32_t* ptr = buffer.getOrderedBinaryBuffer()->reserve(kPODPaintSize); |
2050 | 2050 |
2051 ptr = write_scalar(ptr, this->getTextSize()); | 2051 ptr = write_scalar(ptr, this->getTextSize()); |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
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 buffer.writeFlattenable(this->getAnnotation()); |
2103 } | 2103 } |
2104 #if SK_BUILD_FOR_ANDROID | 2104 #ifdef SK_BUILD_FOR_ANDROID |
2105 if (flatFlags & kHasNonDefaultPaintOptionsAndroid_FlatFlag) { | 2105 if (flatFlags & kHasNonDefaultPaintOptionsAndroid_FlatFlag) { |
2106 this->getPaintOptionsAndroid().flatten(buffer); | 2106 this->getPaintOptionsAndroid().flatten(buffer); |
2107 } | 2107 } |
2108 #endif | 2108 #endif |
2109 } | 2109 } |
2110 | 2110 |
2111 void SkPaint::unflatten(SkFlattenableReadBuffer& buffer) { | 2111 void SkPaint::unflatten(SkFlattenableReadBuffer& buffer) { |
2112 fPrivFlags = 0; | 2112 fPrivFlags = 0; |
2113 | 2113 |
2114 uint8_t flatFlags = 0; | 2114 uint8_t flatFlags = 0; |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2185 this->setPathEffect(NULL); | 2185 this->setPathEffect(NULL); |
2186 this->setShader(NULL); | 2186 this->setShader(NULL); |
2187 this->setXfermode(NULL); | 2187 this->setXfermode(NULL); |
2188 this->setMaskFilter(NULL); | 2188 this->setMaskFilter(NULL); |
2189 this->setColorFilter(NULL); | 2189 this->setColorFilter(NULL); |
2190 this->setRasterizer(NULL); | 2190 this->setRasterizer(NULL); |
2191 this->setLooper(NULL); | 2191 this->setLooper(NULL); |
2192 this->setImageFilter(NULL); | 2192 this->setImageFilter(NULL); |
2193 } | 2193 } |
2194 | 2194 |
2195 #if SK_BUILD_FOR_ANDROID | 2195 #ifdef SK_BUILD_FOR_ANDROID |
2196 this->setPaintOptionsAndroid(SkPaintOptionsAndroid()); | 2196 this->setPaintOptionsAndroid(SkPaintOptionsAndroid()); |
2197 #endif | 2197 #endif |
2198 if (flatFlags & kHasNonDefaultPaintOptionsAndroid_FlatFlag) { | 2198 if (flatFlags & kHasNonDefaultPaintOptionsAndroid_FlatFlag) { |
2199 SkPaintOptionsAndroid options; | 2199 SkPaintOptionsAndroid options; |
2200 options.unflatten(buffer); | 2200 options.unflatten(buffer); |
2201 #if SK_BUILD_FOR_ANDROID | 2201 #ifdef SK_BUILD_FOR_ANDROID |
2202 this->setPaintOptionsAndroid(options); | 2202 this->setPaintOptionsAndroid(options); |
2203 #endif | 2203 #endif |
2204 } | 2204 } |
2205 } | 2205 } |
2206 | 2206 |
2207 /////////////////////////////////////////////////////////////////////////////// | 2207 /////////////////////////////////////////////////////////////////////////////// |
2208 | 2208 |
2209 SkShader* SkPaint::setShader(SkShader* shader) { | 2209 SkShader* SkPaint::setShader(SkShader* shader) { |
2210 GEN_ID_INC_EVAL(shader != fShader); | 2210 GEN_ID_INC_EVAL(shader != fShader); |
2211 SkRefCnt_SafeAssign(fShader, shader); | 2211 SkRefCnt_SafeAssign(fShader, shader); |
(...skipping 383 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2595 case SkXfermode::kPlus_Mode: | 2595 case SkXfermode::kPlus_Mode: |
2596 return 0 == this->getAlpha(); | 2596 return 0 == this->getAlpha(); |
2597 case SkXfermode::kDst_Mode: | 2597 case SkXfermode::kDst_Mode: |
2598 return true; | 2598 return true; |
2599 default: | 2599 default: |
2600 break; | 2600 break; |
2601 } | 2601 } |
2602 } | 2602 } |
2603 return false; | 2603 return false; |
2604 } | 2604 } |
OLD | NEW |