#include "wx/generic/region.h"
+typedef struct _NSRect NSRect;
+
class WXDLLEXPORT wxRegion : public wxRegionGeneric
{
DECLARE_DYNAMIC_CLASS(wxRegion);
wxRegion& operator= (const wxRegion& r)
{ return *(wxRegion*)&(this->wxRegionGeneric::operator=(r)); }
+ // Cocoa-specific creation
+ wxRegion(const NSRect& rect);
+ wxRegion(const NSRect *rects, int count);
+
// Use the non-transparent pixels of a wxBitmap for the region to combine
// with this region. If the bitmap has a mask then it will be used,
// otherwise the colour to be treated as transparent may be specified,
#include "wx/region.h"
+#import <Foundation/NSGeometry.h>
+
IMPLEMENT_DYNAMIC_CLASS(wxRegion, wxGDIObject);
+inline wxRect NSRectToWxRect(const NSRect& rect)
+{
+ return wxRect((wxCoord)rect.origin.x, (wxCoord)rect.origin.y,
+ (wxCoord)rect.size.width, (wxCoord)rect.size.height);
+}
+
+wxRegion::wxRegion(const NSRect& rect)
+{
+ Union(NSRectToWxRect(rect));
+}
+
+wxRegion::wxRegion(const NSRect *rects, int count)
+{
+ for(int i=0; i<count; i++)
+ {
+ Union(NSRectToWxRect(rects[i]));
+ }
+}
+