class WXDLLEXPORT wxRect;
class WXDLLEXPORT wxPoint;
-enum wxRegionContain
-{ wxOutRegion = 0
-, wxPartRegion = 1
-, wxInRegion = 2
-};
-
class WXDLLEXPORT wxRegionGeneric : public wxGDIObject
{
// DECLARE_DYNAMIC_CLASS(wxRegionGeneric);
wxRegionGeneric(const wxPoint& topLeft, const wxPoint& bottomRight);
wxRegionGeneric(const wxRect& rect);
wxRegionGeneric();
- ~wxRegionGeneric();
+ virtual ~wxRegionGeneric();
bool Ok() const { return m_refData != NULL; }
// Does the region contain the rectangle rect?
wxRegionContain Contains(const wxRect& rect) const;
+ // Use the non-transparent pixels of a wxBitmap for the region to combine
+ // with this region. First version takes transparency from bitmap's mask,
+ // second lets the user specify the colour to be treated as transparent
+ // along with an optional tolerance value.
+ // NOTE: implemented in common/rgncmn.cpp
+ bool Union(const wxBitmap& bmp);
+ bool Union(const wxBitmap& bmp,
+ const wxColour& transColour, int tolerance = 0);
+
+ // Convert the region to a B&W bitmap with the white pixels being inside
+ // the region.
+ wxBitmap ConvertToBitmap() const;
+
protected:
virtual wxObjectRefData *CreateRefData() const;
virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
wxRegionIteratorGeneric();
wxRegionIteratorGeneric(const wxRegionGeneric& region);
wxRegionIteratorGeneric(const wxRegionIteratorGeneric& iterator);
- ~wxRegionIteratorGeneric();
+ virtual ~wxRegionIteratorGeneric();
wxRegionIteratorGeneric& operator=(const wxRegionIteratorGeneric& iterator);