]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/affinematrix2d.cpp
Override AdjustForParentClientOrigin() in wxNonOwnedWindow to do nothing.
[wxWidgets.git] / src / common / affinematrix2d.cpp
index 977f6834ad86d7347269650d39ef059a0ccc8749..0b1b9207dc90758d44f24dcf7b6d2745b9324869 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Based on wxTransformMatrix by Chris Breeze, Julian Smart
 // Created:     2011-04-05
 // Copyright:   (c) wxWidgets team
-// Licence:     wxWidgets licence
+// Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
 #include "wx/wxprec.h"
@@ -13,6 +13,8 @@
     #pragma hdrstop
 #endif
 
+#if wxUSE_GEOMETRY
+
 #include "wx/affinematrix2d.h"
 #include "wx/math.h"
 
@@ -104,10 +106,13 @@ bool wxAffineMatrix2D::IsEqual(const wxAffineMatrix2DBase& t) const
 //
 
 // add the translation to this matrix
+// |  1   0   0 |   | m_11  m_12   0 |
+// |  0   1   0 | x | m_21  m_22   0 |
+// | dx  dy   1 |   | m_tx  m_ty   1 |
 void wxAffineMatrix2D::Translate(wxDouble dx, wxDouble dy)
 {
-    m_tx += dx;
-    m_ty += dy;
+    m_tx += m_11 * dx + m_21 * dy;
+    m_ty += m_12 * dx + m_22 * dy;
 }
 
 // add the scale to this matrix
@@ -177,3 +182,5 @@ bool wxAffineMatrix2D::IsIdentity() const
            m_21 == 0 && m_22 == 1 &&
            m_tx == 0 && m_ty == 0;
 }
+
+#endif // wxUSE_GEOMETRY