From c16b9bfe69f3d28738aa35edfbc2a05b7c573301 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Tue, 10 Oct 2006 17:33:49 +0000 Subject: [PATCH] more inlines called before defined git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/region.h | 18 ++++++------------ src/common/rgncmn.cpp | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 12 deletions(-) diff --git a/include/wx/region.h b/include/wx/region.h index 236531650f..1d038a6cbf 100644 --- a/include/wx/region.h +++ b/include/wx/region.h @@ -12,10 +12,10 @@ #ifndef _WX_REGION_H_BASE_ #define _WX_REGION_H_BASE_ -#include "wx/bitmap.h" #include "wx/gdiobj.h" #include "wx/gdicmn.h" +class WXDLLIMPEXP_CORE wxBitmap; class WXDLLEXPORT wxColour; class WXDLLEXPORT wxRegion; @@ -207,17 +207,11 @@ protected: virtual bool DoCombine(const wxRegion& region, wxRegionOp op) = 0; // implement some wxRegionBase pure virtuals in terms of Combine() - virtual bool DoUnionWithRect(const wxRect& rect) - { return Combine(rect, wxRGN_OR); } - virtual bool DoUnionWithRegion(const wxRegion& region) - { return Combine(region, wxRGN_OR); } - - virtual bool DoIntersect(const wxRegion& region) - { return Combine(region, wxRGN_AND); } - virtual bool DoSubtract(const wxRegion& region) - { return Combine(region, wxRGN_DIFF); } - virtual bool DoXor(const wxRegion& region) - { return Combine(region, wxRGN_XOR); } + virtual bool DoUnionWithRect(const wxRect& rect); + virtual bool DoUnionWithRegion(const wxRegion& region); + virtual bool DoIntersect(const wxRegion& region); + virtual bool DoSubtract(const wxRegion& region); + virtual bool DoXor(const wxRegion& region); }; #endif // ports with wxRegion::Combine() diff --git a/src/common/rgncmn.cpp b/src/common/rgncmn.cpp index 8b6530c78d..a18bb20708 100644 --- a/src/common/rgncmn.cpp +++ b/src/common/rgncmn.cpp @@ -157,3 +157,36 @@ bool wxRegionBase::Union(const wxBitmap& bmp, } #endif // wxUSE_IMAGE + +#ifdef wxHAS_REGION_COMBINE +// ============================================================================ +// wxRegionWithCombine +// ============================================================================ + +// implement some wxRegionBase pure virtuals in terms of Combine() +bool wxRegionWithCombine::DoUnionWithRect(const wxRect& rect) +{ + return Combine(rect, wxRGN_OR); +} + +bool wxRegionWithCombine::DoUnionWithRegion(const wxRegion& region) +{ + return DoCombine(region, wxRGN_OR); +} + +bool wxRegionWithCombine::DoIntersect(const wxRegion& region) +{ + return DoCombine(region, wxRGN_AND); +} + +bool wxRegionWithCombine::DoSubtract(const wxRegion& region) +{ + return DoCombine(region, wxRGN_DIFF); +} + +bool wxRegionWithCombine::DoXor(const wxRegion& region) +{ + return DoCombine(region, wxRGN_XOR); +} + +#endif // wxHAS_REGION_COMBINE -- 2.45.2