| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. | 2 * Copyright (C) 2012 Adobe Systems Incorporated. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above | 8 * 1. Redistributions of source code must retain the above |
| 9 * copyright notice, this list of conditions and the following | 9 * copyright notice, this list of conditions and the following |
| 10 * disclaimer. | 10 * disclaimer. |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 94 | 94 |
| 95 class ShapeClipPathOperation final : public ClipPathOperation { | 95 class ShapeClipPathOperation final : public ClipPathOperation { |
| 96 public: | 96 public: |
| 97 static PassRefPtr<ShapeClipPathOperation> create(PassRefPtr<BasicShape> shap
e) | 97 static PassRefPtr<ShapeClipPathOperation> create(PassRefPtr<BasicShape> shap
e) |
| 98 { | 98 { |
| 99 return adoptRef(new ShapeClipPathOperation(shape)); | 99 return adoptRef(new ShapeClipPathOperation(shape)); |
| 100 } | 100 } |
| 101 | 101 |
| 102 const BasicShape* basicShape() const { return m_shape.get(); } | 102 const BasicShape* basicShape() const { return m_shape.get(); } |
| 103 bool isValid() const { return m_shape.get(); } | 103 bool isValid() const { return m_shape.get(); } |
| 104 WindRule windRule() const { return m_shape->windRule(); } | |
| 105 const Path& path(const FloatRect& boundingRect) | 104 const Path& path(const FloatRect& boundingRect) |
| 106 { | 105 { |
| 107 ASSERT(m_shape); | 106 ASSERT(m_shape); |
| 108 m_path.clear(); | 107 m_path.clear(); |
| 109 m_path = adoptPtr(new Path); | 108 m_path = adoptPtr(new Path); |
| 110 m_shape->path(*m_path, boundingRect); | 109 m_shape->path(*m_path, boundingRect); |
| 111 m_path->setWindRule(windRule()); | 110 m_path->setWindRule(m_shape->windRule()); |
| 112 return *m_path; | 111 return *m_path; |
| 113 } | 112 } |
| 114 | 113 |
| 115 private: | 114 private: |
| 116 bool operator==(const ClipPathOperation&) const override; | 115 bool operator==(const ClipPathOperation&) const override; |
| 117 | 116 |
| 118 ShapeClipPathOperation(PassRefPtr<BasicShape> shape) | 117 ShapeClipPathOperation(PassRefPtr<BasicShape> shape) |
| 119 : ClipPathOperation(SHAPE) | 118 : ClipPathOperation(SHAPE) |
| 120 , m_shape(shape) | 119 , m_shape(shape) |
| 121 { | 120 { |
| (...skipping 11 matching lines...) Expand all Loading... |
| 133 return false; | 132 return false; |
| 134 BasicShape* otherShape = toShapeClipPathOperation(o).m_shape.get(); | 133 BasicShape* otherShape = toShapeClipPathOperation(o).m_shape.get(); |
| 135 if (!m_shape.get() || !otherShape) | 134 if (!m_shape.get() || !otherShape) |
| 136 return static_cast<bool>(m_shape.get()) == static_cast<bool>(otherShape)
; | 135 return static_cast<bool>(m_shape.get()) == static_cast<bool>(otherShape)
; |
| 137 return *m_shape == *otherShape; | 136 return *m_shape == *otherShape; |
| 138 } | 137 } |
| 139 | 138 |
| 140 } | 139 } |
| 141 | 140 |
| 142 #endif // ClipPathOperation_h | 141 #endif // ClipPathOperation_h |
| OLD | NEW |