Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(143)

Side by Side Diff: third_party/WebKit/Source/core/dom/DOMMatrix.h

Issue 2283363003: GeometryInterface: Add DOMMatrixInit and fromMatrix(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 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 #ifndef DOMMatrix_h 5 #ifndef DOMMatrix_h
6 #define DOMMatrix_h 6 #define DOMMatrix_h
7 7
8 #include "core/dom/DOMMatrixInit.h"
8 #include "core/dom/DOMMatrixReadOnly.h" 9 #include "core/dom/DOMMatrixReadOnly.h"
9 10
10 namespace blink { 11 namespace blink {
11 12
12 class DOMMatrix : public DOMMatrixReadOnly { 13 class DOMMatrix : public DOMMatrixReadOnly {
13 DEFINE_WRAPPERTYPEINFO(); 14 DEFINE_WRAPPERTYPEINFO();
14 public: 15 public:
15 static DOMMatrix* create(); 16 static DOMMatrix* create();
16 static DOMMatrix* create(DOMMatrixReadOnly*); 17 static DOMMatrix* create(DOMMatrixReadOnly*);
17 static DOMMatrix* create(const SkMatrix44&); 18 static DOMMatrix* create(const SkMatrix44&);
19 static DOMMatrix* fromMatrix(DOMMatrixInit&, ExceptionState&);
18 20
19 void setA(double value) { m_matrix->setM11(value); } 21 void setA(double value) { m_matrix->setM11(value); }
20 void setB(double value) { m_matrix->setM12(value); } 22 void setB(double value) { m_matrix->setM12(value); }
21 void setC(double value) { m_matrix->setM21(value); } 23 void setC(double value) { m_matrix->setM21(value); }
22 void setD(double value) { m_matrix->setM22(value); } 24 void setD(double value) { m_matrix->setM22(value); }
23 void setE(double value) { m_matrix->setM41(value); } 25 void setE(double value) { m_matrix->setM41(value); }
24 void setF(double value) { m_matrix->setM42(value); } 26 void setF(double value) { m_matrix->setM42(value); }
25 27
26 void setM11(double value) { m_matrix->setM11(value); } 28 void setM11(double value) { m_matrix->setM11(value); }
27 void setM12(double value) { m_matrix->setM12(value); } 29 void setM12(double value) { m_matrix->setM12(value); }
28 void setM13(double value) { m_matrix->setM13(value); setIs2D(!value); } 30 void setM13(double value) { m_matrix->setM13(value); setIs2D(!value); }
29 void setM14(double value) { m_matrix->setM14(value); setIs2D(!value); } 31 void setM14(double value) { m_matrix->setM14(value); setIs2D(!value); }
30 void setM21(double value) { m_matrix->setM21(value); } 32 void setM21(double value) { m_matrix->setM21(value); }
31 void setM22(double value) { m_matrix->setM22(value); } 33 void setM22(double value) { m_matrix->setM22(value); }
32 void setM23(double value) { m_matrix->setM23(value); setIs2D(!value); } 34 void setM23(double value) { m_matrix->setM23(value); setIs2D(!value); }
33 void setM24(double value) { m_matrix->setM24(value); setIs2D(!value); } 35 void setM24(double value) { m_matrix->setM24(value); setIs2D(!value); }
34 void setM31(double value) { m_matrix->setM31(value); setIs2D(!value); } 36 void setM31(double value) { m_matrix->setM31(value); setIs2D(!value); }
35 void setM32(double value) { m_matrix->setM32(value); setIs2D(!value); } 37 void setM32(double value) { m_matrix->setM32(value); setIs2D(!value); }
36 void setM33(double value) { m_matrix->setM33(value); setIs2D(value != 1); } 38 void setM33(double value) { m_matrix->setM33(value); setIs2D(value != 1); }
37 void setM34(double value) { m_matrix->setM34(value); setIs2D(!value); } 39 void setM34(double value) { m_matrix->setM34(value); setIs2D(!value); }
38 void setM41(double value) { m_matrix->setM41(value); } 40 void setM41(double value) { m_matrix->setM41(value); }
39 void setM42(double value) { m_matrix->setM42(value); } 41 void setM42(double value) { m_matrix->setM42(value); }
40 void setM43(double value) { m_matrix->setM43(value); setIs2D(!value); } 42 void setM43(double value) { m_matrix->setM43(value); setIs2D(!value); }
41 void setM44(double value) { m_matrix->setM44(value); setIs2D(value != 1); } 43 void setM44(double value) { m_matrix->setM44(value); setIs2D(value != 1); }
42 44
43 DOMMatrix* multiplySelf(DOMMatrix*); 45 DOMMatrix* multiplySelf(DOMMatrixInit&, ExceptionState&);
44 DOMMatrix* preMultiplySelf(DOMMatrix*); 46 DOMMatrix* preMultiplySelf(DOMMatrixInit&, ExceptionState&);
45 DOMMatrix* translateSelf(double tx, double ty, double tz = 0); 47 DOMMatrix* translateSelf(double tx, double ty, double tz = 0);
46 DOMMatrix* scaleSelf(double scale, double ox = 0, double oy = 0); 48 DOMMatrix* scaleSelf(double scale, double ox = 0, double oy = 0);
47 DOMMatrix* scale3dSelf(double scale, double ox = 0, double oy = 0, double oz = 0); 49 DOMMatrix* scale3dSelf(double scale, double ox = 0, double oy = 0, double oz = 0);
48 DOMMatrix* scaleNonUniformSelf(double sx, double sy = 1, double sz = 1, 50 DOMMatrix* scaleNonUniformSelf(double sx, double sy = 1, double sz = 1,
49 double ox = 0, double oy = 0, double oz = 0); 51 double ox = 0, double oy = 0, double oz = 0);
50 DOMMatrix* skewXSelf(double sx = 0); 52 DOMMatrix* skewXSelf(double sx = 0);
51 DOMMatrix* skewYSelf(double sy = 0); 53 DOMMatrix* skewYSelf(double sy = 0);
52 54
53 private: 55 private:
54 DOMMatrix(const TransformationMatrix&, bool is2D = true); 56 DOMMatrix(const TransformationMatrix&, bool is2D = true);
55 57
56 void setIs2D(bool value); 58 void setIs2D(bool value);
57 }; 59 };
58 60
59 } // namespace blink 61 } // namespace blink
60 62
61 #endif 63 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698