// headers
// ----------------------------------------------------------------------------
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "region.h"
#endif
wxRegionRefData(const wxRegionRefData& data)
{
-#if defined(__WIN32__) && !defined(__WXMICROWIN__)
+#if defined(__WIN32__) && !defined(__WXMICROWIN__) && !defined(__WXWINCE__)
DWORD noBytes = ::GetRegionData(data.m_region, 0, NULL);
RGNDATA *rgnData = (RGNDATA*) new char[noBytes];
::GetRegionData(data.m_region, noBytes, rgnData);
wxRegion::wxRegion(size_t n, const wxPoint *points, int fillStyle)
{
-#ifdef __WXMICROWIN__
+#if defined(__WXMICROWIN__) || defined(__WXWINCE__)
m_refData = NULL;
M_REGION = NULL;
#else
m_numRects = 0;
else
{
-#if defined(__WIN32__)
DWORD noBytes = ::GetRegionData(((wxRegionRefData*)region.m_refData)->m_region, 0, NULL);
RGNDATA *rgnData = (RGNDATA*) new char[noBytes];
::GetRegionData(((wxRegionRefData*)region.m_refData)->m_region, noBytes, rgnData);
m_numRects = header->nCount;
delete[] (char*) rgnData;
-#else // Win16
- RECT rect;
- ::GetRgnBox(((wxRegionRefData*)region.m_refData)->m_region, &rect);
- m_rects = new wxRect[1];
- m_rects[0].x = rect.left;
- m_rects[0].y = rect.top;
- m_rects[0].width = rect.right - rect.left;
- m_rects[0].height = rect.bottom - rect.top;
-
- m_numRects = 1;
-#endif // Win32/16
}
}