| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "cc/proto/skia_conversions.h" | 5 #include "cc/proto/skia_conversions.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "cc/proto/gfx_conversions.h" | 8 #include "cc/proto/gfx_conversions.h" |
| 9 #include "cc/proto/skrrect.pb.h" | 9 #include "cc/proto/skrrect.pb.h" |
| 10 #include "third_party/skia/include/core/SkRRect.h" | 10 #include "third_party/skia/include/core/SkRRect.h" |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 case SkRegion::Op::kXOR_Op: | 54 case SkRegion::Op::kXOR_Op: |
| 55 return proto::SkRegion::XOR; | 55 return proto::SkRegion::XOR; |
| 56 case SkRegion::Op::kReverseDifference_Op: | 56 case SkRegion::Op::kReverseDifference_Op: |
| 57 return proto::SkRegion::REVERSE_DIFFERENCE; | 57 return proto::SkRegion::REVERSE_DIFFERENCE; |
| 58 case SkRegion::Op::kReplace_Op: | 58 case SkRegion::Op::kReplace_Op: |
| 59 return proto::SkRegion::REPLACE; | 59 return proto::SkRegion::REPLACE; |
| 60 } | 60 } |
| 61 return proto::SkRegion::DIFFERENCE_; | 61 return proto::SkRegion::DIFFERENCE_; |
| 62 } | 62 } |
| 63 | 63 |
| 64 SkXfermode::Mode SkXfermodeModeFromProto(proto::SkXfermode::Mode mode) { | 64 SkBlendMode SkXfermodeModeFromProto(proto::SkXfermode::Mode mode) { |
| 65 switch (mode) { | 65 switch (mode) { |
| 66 case proto::SkXfermode::CLEAR_: | 66 case proto::SkXfermode::CLEAR_: |
| 67 return SkXfermode::Mode::kClear_Mode; | 67 return SkBlendMode::kClear; |
| 68 case proto::SkXfermode::SRC: | 68 case proto::SkXfermode::SRC: |
| 69 return SkXfermode::Mode::kSrc_Mode; | 69 return SkBlendMode::kSrc; |
| 70 case proto::SkXfermode::DST: | 70 case proto::SkXfermode::DST: |
| 71 return SkXfermode::Mode::kDst_Mode; | 71 return SkBlendMode::kDst; |
| 72 case proto::SkXfermode::SRC_OVER: | 72 case proto::SkXfermode::SRC_OVER: |
| 73 return SkXfermode::Mode::kSrcOver_Mode; | 73 return SkBlendMode::kSrcOver; |
| 74 case proto::SkXfermode::DST_OVER: | 74 case proto::SkXfermode::DST_OVER: |
| 75 return SkXfermode::Mode::kDstOver_Mode; | 75 return SkBlendMode::kDstOver; |
| 76 case proto::SkXfermode::SRC_IN: | 76 case proto::SkXfermode::SRC_IN: |
| 77 return SkXfermode::Mode::kSrcIn_Mode; | 77 return SkBlendMode::kSrcIn; |
| 78 case proto::SkXfermode::DST_IN: | 78 case proto::SkXfermode::DST_IN: |
| 79 return SkXfermode::Mode::kDstIn_Mode; | 79 return SkBlendMode::kDstIn; |
| 80 case proto::SkXfermode::SRC_OUT: | 80 case proto::SkXfermode::SRC_OUT: |
| 81 return SkXfermode::Mode::kSrcOut_Mode; | 81 return SkBlendMode::kSrcOut; |
| 82 case proto::SkXfermode::DST_OUT: | 82 case proto::SkXfermode::DST_OUT: |
| 83 return SkXfermode::Mode::kDstOut_Mode; | 83 return SkBlendMode::kDstOut; |
| 84 case proto::SkXfermode::SRC_A_TOP: | 84 case proto::SkXfermode::SRC_A_TOP: |
| 85 return SkXfermode::Mode::kSrcATop_Mode; | 85 return SkBlendMode::kSrcATop; |
| 86 case proto::SkXfermode::DST_A_TOP: | 86 case proto::SkXfermode::DST_A_TOP: |
| 87 return SkXfermode::Mode::kDstATop_Mode; | 87 return SkBlendMode::kDstATop; |
| 88 case proto::SkXfermode::XOR: | 88 case proto::SkXfermode::XOR: |
| 89 return SkXfermode::Mode::kXor_Mode; | 89 return SkBlendMode::kXor; |
| 90 case proto::SkXfermode::PLUS: | 90 case proto::SkXfermode::PLUS: |
| 91 return SkXfermode::Mode::kPlus_Mode; | 91 return SkBlendMode::kPlus; |
| 92 case proto::SkXfermode::MODULATE: | 92 case proto::SkXfermode::MODULATE: |
| 93 return SkXfermode::Mode::kModulate_Mode; | 93 return SkBlendMode::kModulate; |
| 94 case proto::SkXfermode::SCREEN: | 94 case proto::SkXfermode::SCREEN: |
| 95 return SkXfermode::Mode::kScreen_Mode; | 95 return SkBlendMode::kScreen; |
| 96 case proto::SkXfermode::OVERLAY: | 96 case proto::SkXfermode::OVERLAY: |
| 97 return SkXfermode::Mode::kOverlay_Mode; | 97 return SkBlendMode::kOverlay; |
| 98 case proto::SkXfermode::DARKEN: | 98 case proto::SkXfermode::DARKEN: |
| 99 return SkXfermode::Mode::kDarken_Mode; | 99 return SkBlendMode::kDarken; |
| 100 case proto::SkXfermode::LIGHTEN: | 100 case proto::SkXfermode::LIGHTEN: |
| 101 return SkXfermode::Mode::kLighten_Mode; | 101 return SkBlendMode::kLighten; |
| 102 case proto::SkXfermode::COLOR_DODGE: | 102 case proto::SkXfermode::COLOR_DODGE: |
| 103 return SkXfermode::Mode::kColorDodge_Mode; | 103 return SkBlendMode::kColorDodge; |
| 104 case proto::SkXfermode::COLOR_BURN: | 104 case proto::SkXfermode::COLOR_BURN: |
| 105 return SkXfermode::Mode::kColorBurn_Mode; | 105 return SkBlendMode::kColorBurn; |
| 106 case proto::SkXfermode::HARD_LIGHT: | 106 case proto::SkXfermode::HARD_LIGHT: |
| 107 return SkXfermode::Mode::kHardLight_Mode; | 107 return SkBlendMode::kHardLight; |
| 108 case proto::SkXfermode::SOFT_LIGHT: | 108 case proto::SkXfermode::SOFT_LIGHT: |
| 109 return SkXfermode::Mode::kSoftLight_Mode; | 109 return SkBlendMode::kSoftLight; |
| 110 case proto::SkXfermode::DIFFERENCE_: | 110 case proto::SkXfermode::DIFFERENCE_: |
| 111 return SkXfermode::Mode::kDifference_Mode; | 111 return SkBlendMode::kDifference; |
| 112 case proto::SkXfermode::EXCLUSION: | 112 case proto::SkXfermode::EXCLUSION: |
| 113 return SkXfermode::Mode::kExclusion_Mode; | 113 return SkBlendMode::kExclusion; |
| 114 case proto::SkXfermode::MULTIPLY: | 114 case proto::SkXfermode::MULTIPLY: |
| 115 return SkXfermode::Mode::kMultiply_Mode; | 115 return SkBlendMode::kMultiply; |
| 116 case proto::SkXfermode::HUE: | 116 case proto::SkXfermode::HUE: |
| 117 return SkXfermode::Mode::kHue_Mode; | 117 return SkBlendMode::kHue; |
| 118 case proto::SkXfermode::SATURATION: | 118 case proto::SkXfermode::SATURATION: |
| 119 return SkXfermode::Mode::kSaturation_Mode; | 119 return SkBlendMode::kSaturation; |
| 120 case proto::SkXfermode::COLOR: | 120 case proto::SkXfermode::COLOR: |
| 121 return SkXfermode::Mode::kColor_Mode; | 121 return SkBlendMode::kColor; |
| 122 case proto::SkXfermode::LUMINOSITY: | 122 case proto::SkXfermode::LUMINOSITY: |
| 123 return SkXfermode::Mode::kLuminosity_Mode; | 123 return SkBlendMode::kLuminosity; |
| 124 } | 124 } |
| 125 return SkXfermode::Mode::kClear_Mode; | 125 return SkBlendMode::kClear; |
| 126 } | 126 } |
| 127 | 127 |
| 128 proto::SkXfermode::Mode SkXfermodeModeToProto(SkXfermode::Mode mode) { | 128 proto::SkXfermode::Mode SkXfermodeModeToProto(SkBlendMode mode) { |
| 129 switch (mode) { | 129 switch (mode) { |
| 130 case SkXfermode::Mode::kClear_Mode: | 130 case SkBlendMode::kClear: |
| 131 return proto::SkXfermode::CLEAR_; | 131 return proto::SkXfermode::CLEAR_; |
| 132 case SkXfermode::Mode::kSrc_Mode: | 132 case SkBlendMode::kSrc: |
| 133 return proto::SkXfermode::SRC; | 133 return proto::SkXfermode::SRC; |
| 134 case SkXfermode::Mode::kDst_Mode: | 134 case SkBlendMode::kDst: |
| 135 return proto::SkXfermode::DST; | 135 return proto::SkXfermode::DST; |
| 136 case SkXfermode::Mode::kSrcOver_Mode: | 136 case SkBlendMode::kSrcOver: |
| 137 return proto::SkXfermode::SRC_OVER; | 137 return proto::SkXfermode::SRC_OVER; |
| 138 case SkXfermode::Mode::kDstOver_Mode: | 138 case SkBlendMode::kDstOver: |
| 139 return proto::SkXfermode::DST_OVER; | 139 return proto::SkXfermode::DST_OVER; |
| 140 case SkXfermode::Mode::kSrcIn_Mode: | 140 case SkBlendMode::kSrcIn: |
| 141 return proto::SkXfermode::SRC_IN; | 141 return proto::SkXfermode::SRC_IN; |
| 142 case SkXfermode::Mode::kDstIn_Mode: | 142 case SkBlendMode::kDstIn: |
| 143 return proto::SkXfermode::DST_IN; | 143 return proto::SkXfermode::DST_IN; |
| 144 case SkXfermode::Mode::kSrcOut_Mode: | 144 case SkBlendMode::kSrcOut: |
| 145 return proto::SkXfermode::SRC_OUT; | 145 return proto::SkXfermode::SRC_OUT; |
| 146 case SkXfermode::Mode::kDstOut_Mode: | 146 case SkBlendMode::kDstOut: |
| 147 return proto::SkXfermode::DST_OUT; | 147 return proto::SkXfermode::DST_OUT; |
| 148 case SkXfermode::Mode::kSrcATop_Mode: | 148 case SkBlendMode::kSrcATop: |
| 149 return proto::SkXfermode::SRC_A_TOP; | 149 return proto::SkXfermode::SRC_A_TOP; |
| 150 case SkXfermode::Mode::kDstATop_Mode: | 150 case SkBlendMode::kDstATop: |
| 151 return proto::SkXfermode::DST_A_TOP; | 151 return proto::SkXfermode::DST_A_TOP; |
| 152 case SkXfermode::Mode::kXor_Mode: | 152 case SkBlendMode::kXor: |
| 153 return proto::SkXfermode::XOR; | 153 return proto::SkXfermode::XOR; |
| 154 case SkXfermode::Mode::kPlus_Mode: | 154 case SkBlendMode::kPlus: |
| 155 return proto::SkXfermode::PLUS; | 155 return proto::SkXfermode::PLUS; |
| 156 case SkXfermode::Mode::kModulate_Mode: | 156 case SkBlendMode::kModulate: |
| 157 return proto::SkXfermode::MODULATE; | 157 return proto::SkXfermode::MODULATE; |
| 158 case SkXfermode::Mode::kScreen_Mode: | 158 case SkBlendMode::kScreen: |
| 159 return proto::SkXfermode::SCREEN; | 159 return proto::SkXfermode::SCREEN; |
| 160 case SkXfermode::Mode::kOverlay_Mode: | 160 case SkBlendMode::kOverlay: |
| 161 return proto::SkXfermode::OVERLAY; | 161 return proto::SkXfermode::OVERLAY; |
| 162 case SkXfermode::Mode::kDarken_Mode: | 162 case SkBlendMode::kDarken: |
| 163 return proto::SkXfermode::DARKEN; | 163 return proto::SkXfermode::DARKEN; |
| 164 case SkXfermode::Mode::kLighten_Mode: | 164 case SkBlendMode::kLighten: |
| 165 return proto::SkXfermode::LIGHTEN; | 165 return proto::SkXfermode::LIGHTEN; |
| 166 case SkXfermode::Mode::kColorDodge_Mode: | 166 case SkBlendMode::kColorDodge: |
| 167 return proto::SkXfermode::COLOR_DODGE; | 167 return proto::SkXfermode::COLOR_DODGE; |
| 168 case SkXfermode::Mode::kColorBurn_Mode: | 168 case SkBlendMode::kColorBurn: |
| 169 return proto::SkXfermode::COLOR_BURN; | 169 return proto::SkXfermode::COLOR_BURN; |
| 170 case SkXfermode::Mode::kHardLight_Mode: | 170 case SkBlendMode::kHardLight: |
| 171 return proto::SkXfermode::HARD_LIGHT; | 171 return proto::SkXfermode::HARD_LIGHT; |
| 172 case SkXfermode::Mode::kSoftLight_Mode: | 172 case SkBlendMode::kSoftLight: |
| 173 return proto::SkXfermode::SOFT_LIGHT; | 173 return proto::SkXfermode::SOFT_LIGHT; |
| 174 case SkXfermode::Mode::kDifference_Mode: | 174 case SkBlendMode::kDifference: |
| 175 return proto::SkXfermode::DIFFERENCE_; | 175 return proto::SkXfermode::DIFFERENCE_; |
| 176 case SkXfermode::Mode::kExclusion_Mode: | 176 case SkBlendMode::kExclusion: |
| 177 return proto::SkXfermode::EXCLUSION; | 177 return proto::SkXfermode::EXCLUSION; |
| 178 case SkXfermode::Mode::kMultiply_Mode: | 178 case SkBlendMode::kMultiply: |
| 179 return proto::SkXfermode::MULTIPLY; | 179 return proto::SkXfermode::MULTIPLY; |
| 180 case SkXfermode::Mode::kHue_Mode: | 180 case SkBlendMode::kHue: |
| 181 return proto::SkXfermode::HUE; | 181 return proto::SkXfermode::HUE; |
| 182 case SkXfermode::Mode::kSaturation_Mode: | 182 case SkBlendMode::kSaturation: |
| 183 return proto::SkXfermode::SATURATION; | 183 return proto::SkXfermode::SATURATION; |
| 184 case SkXfermode::Mode::kColor_Mode: | 184 case SkBlendMode::kColor: |
| 185 return proto::SkXfermode::COLOR; | 185 return proto::SkXfermode::COLOR; |
| 186 case SkXfermode::Mode::kLuminosity_Mode: | 186 case SkBlendMode::kLuminosity: |
| 187 return proto::SkXfermode::LUMINOSITY; | 187 return proto::SkXfermode::LUMINOSITY; |
| 188 } | 188 } |
| 189 return proto::SkXfermode::CLEAR_; | 189 return proto::SkXfermode::CLEAR_; |
| 190 } | 190 } |
| 191 | 191 |
| 192 void SkRRectToProto(const SkRRect& rect, proto::SkRRect* proto) { | 192 void SkRRectToProto(const SkRRect& rect, proto::SkRRect* proto) { |
| 193 RectFToProto(gfx::SkRectToRectF(rect.rect()), proto->mutable_rect()); | 193 RectFToProto(gfx::SkRectToRectF(rect.rect()), proto->mutable_rect()); |
| 194 | 194 |
| 195 SkPointToProto(rect.radii(SkRRect::kUpperLeft_Corner), | 195 SkPointToProto(rect.radii(SkRRect::kUpperLeft_Corner), |
| 196 proto->mutable_radii_upper_left()); | 196 proto->mutable_radii_upper_left()); |
| (...skipping 15 matching lines...) Expand all Loading... |
| 212 parsed_radii[SkRRect::kLowerRight_Corner] = | 212 parsed_radii[SkRRect::kLowerRight_Corner] = |
| 213 ProtoToSkPoint(proto.radii_lower_right()); | 213 ProtoToSkPoint(proto.radii_lower_right()); |
| 214 parsed_radii[SkRRect::kLowerLeft_Corner] = | 214 parsed_radii[SkRRect::kLowerLeft_Corner] = |
| 215 ProtoToSkPoint(proto.radii_lower_left()); | 215 ProtoToSkPoint(proto.radii_lower_left()); |
| 216 SkRRect rect; | 216 SkRRect rect; |
| 217 rect.setRectRadii(parsed_rect, parsed_radii); | 217 rect.setRectRadii(parsed_rect, parsed_radii); |
| 218 return rect; | 218 return rect; |
| 219 } | 219 } |
| 220 | 220 |
| 221 } // namespace cc | 221 } // namespace cc |
| OLD | NEW |