OLD | NEW |
(Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #ifndef DOMQuad_h |
| 6 #define DOMQuad_h |
| 7 |
| 8 #include "core/dom/DOMPoint.h" |
| 9 #include "core/dom/DOMRect.h" |
| 10 |
| 11 namespace blink { |
| 12 |
| 13 typedef const Dictionary DOMPointInit; |
| 14 typedef const Dictionary DOMRectInit; |
| 15 |
| 16 class DOMQuad; |
| 17 |
| 18 class DOMQuadPoint : public DOMPoint { |
| 19 public: |
| 20 static DOMQuadPoint* create(DOMPointInit&, Member<DOMQuad>); |
| 21 static DOMQuadPoint* create(double x, double y, Member<DOMQuad>); |
| 22 |
| 23 virtual void setX(double) OVERRIDE; |
| 24 virtual void setY(double) OVERRIDE; |
| 25 |
| 26 virtual void trace(Visitor*) OVERRIDE; |
| 27 |
| 28 private: |
| 29 DOMQuadPoint(double x, double y, Member<DOMQuad>); |
| 30 |
| 31 Member<DOMQuad> m_quad; |
| 32 }; |
| 33 |
| 34 class DOMQuad : public GarbageCollected<DOMQuad> { |
| 35 public: |
| 36 static DOMQuad* create(DOMRectInit& = DOMRectInit()); |
| 37 static DOMQuad* create(DOMPointInit&, DOMPointInit&, |
| 38 DOMPointInit& = DOMPointInit(), DOMPointInit& = DOMPointInit()); |
| 39 |
| 40 DOMPoint* p1() const { return m_p1.get(); } |
| 41 DOMPoint* p2() const { return m_p2.get(); } |
| 42 DOMPoint* p3() const { return m_p3.get(); } |
| 43 DOMPoint* p4() const { return m_p4.get(); } |
| 44 DOMRectReadOnly* bounds(); |
| 45 |
| 46 void updateHorizontalBounds(); |
| 47 void updateVerticalBounds(); |
| 48 |
| 49 void trace(Visitor*); |
| 50 |
| 51 protected: |
| 52 DOMQuad(double x, double y, double width, double height); |
| 53 DOMQuad(DOMPointInit&, DOMPointInit&, DOMPointInit&, DOMPointInit&); |
| 54 |
| 55 Member<DOMPoint> m_p1; |
| 56 Member<DOMPoint> m_p2; |
| 57 Member<DOMPoint> m_p3; |
| 58 Member<DOMPoint> m_p4; |
| 59 Member<DOMRect> m_bounds; |
| 60 }; |
| 61 |
| 62 } // namespace blink |
| 63 |
| 64 #endif |
OLD | NEW |