]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mgl/region.cpp
applying patch, fixes #10523
[wxWidgets.git] / src / mgl / region.cpp
index f2778ffa9973fca75572b380f1f086688372c858..62457373753d764ed9fb77b840be989a0fe22f36 100644 (file)
@@ -57,12 +57,12 @@ public:
 // wxRegion
 //-----------------------------------------------------------------------------
 
-wxObjectRefData *wxRegion::CreateRefData() const
+wxGDIRefData *wxRegion::CreateGDIRefData() const
 {
     return new wxRegionRefData;
 }
 
-wxObjectRefData *wxRegion::CloneRefData(const wxObjectRefData *data) const
+wxGDIRefData *wxRegion::CloneGDIRefData(const wxGDIRefData *data) const
 {
     return new wxRegionRefData(*(wxRegionRefData *)data);
 }
@@ -102,6 +102,24 @@ wxRegion::wxRegion(const MGLRegion& region)
     M_REGION = region;
 }
 
+wxRegion::wxRegion(size_t n, const wxPoint *points, int WXUNUSED(fillStyle))
+{
+    m_refData = new wxRegionRefData;
+    point_t *pts = new point_t[n];
+
+    for (size_t i = 0; i < n; i++)
+    {
+        pts[i].x = points[i].x;
+        pts[i].y = points[i].y;
+    }
+
+    region_t* rgn = MGL_rgnPolygon(n, pts, 1, 0, 0);
+
+    M_REGION = rgn;
+
+    delete [] pts;
+}
+
 wxRegion::~wxRegion()
 {
     // m_refData unrefed in ~wxObject
@@ -127,7 +145,7 @@ void wxRegion::Clear()
 // Information on region
 //-----------------------------------------------------------------------------
 
-bool wxRegion::DoIsEqual(const wxRegion& region) const
+bool wxRegion::DoIsEqual(const wxRegion& WXUNUSED(region)) const
 {
     wxFAIL_MSG( _T("not implemented") );