| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2008 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2008, 2010 Nokia Corporation and/or its subsidiary(-ies) | 3 * Copyright (C) 2008, 2010 Nokia Corporation and/or its subsidiary(-ies) |
| 4 * Copyright (C) 2007 Alp Toker <alp@atoker.com> | 4 * Copyright (C) 2007 Alp Toker <alp@atoker.com> |
| 5 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> | 5 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> |
| 6 * | 6 * |
| 7 * Redistribution and use in source and binary forms, with or without | 7 * Redistribution and use in source and binary forms, with or without |
| 8 * modification, are permitted provided that the following conditions | 8 * modification, are permitted provided that the following conditions |
| 9 * are met: | 9 * are met: |
| 10 * 1. Redistributions of source code must retain the above copyright | 10 * 1. Redistributions of source code must retain the above copyright |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 128 } | 128 } |
| 129 | 129 |
| 130 RGBA32 CanvasStyle::paintColor() const | 130 RGBA32 CanvasStyle::paintColor() const |
| 131 { | 131 { |
| 132 if (m_type == ColorRGBA) | 132 if (m_type == ColorRGBA) |
| 133 return m_rgba; | 133 return m_rgba; |
| 134 ASSERT(m_type == Gradient || m_type == ImagePattern); | 134 ASSERT(m_type == Gradient || m_type == ImagePattern); |
| 135 return Color::black; | 135 return Color::black; |
| 136 } | 136 } |
| 137 | 137 |
| 138 PassRefPtr<SkShader> CanvasStyle::asShader() const |
| 139 { |
| 140 switch (m_type) { |
| 141 case ColorRGBA: |
| 142 return adoptRef(SkShader::CreateColorShader(m_rgba)); |
| 143 case Gradient: { |
| 144 SkPaint paint; |
| 145 canvasGradient()->gradient()->applyToPaint(paint); |
| 146 return paint.getShader(); |
| 147 } |
| 148 case ImagePattern: { |
| 149 SkPaint paint; |
| 150 canvasPattern()->pattern()->applyToPaint(paint); |
| 151 return paint.getShader(); |
| 152 } |
| 153 default: |
| 154 ASSERT_NOT_REACHED(); |
| 155 } |
| 156 return nullptr; |
| 157 } |
| 158 |
| 138 DEFINE_TRACE(CanvasStyle) | 159 DEFINE_TRACE(CanvasStyle) |
| 139 { | 160 { |
| 140 visitor->trace(m_gradient); | 161 visitor->trace(m_gradient); |
| 141 visitor->trace(m_pattern); | 162 visitor->trace(m_pattern); |
| 142 } | 163 } |
| 143 | 164 |
| 144 } | 165 } |
| OLD | NEW |