Complete rewrite of DoDrawBitmap() and DoBlit().

Blit should now correctly handle all combinations of scaling, clipping, and mask.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Paul Cornett
2009-01-04 02:40:11 +00:00
parent a54b285e7c
commit 02cecc4dc2
2 changed files with 303 additions and 350 deletions

View File

@@ -126,25 +126,7 @@ public:
private:
void DrawingSetup(GdkGC*& gc, bool& originChanged);
// return true if the rectangle specified by the parameters is entirely
// outside of the current clipping region
bool IsOutsideOfClippingRegion(int x, int y, int w, int h);
// remove the current clipping mask and set the clipping region
void RemoveClipMask(GdkGC *gc);
// return the mask equal to the intersection of the original one with the
// clipping region
GdkBitmap *GetClippedMask(GdkBitmap *mask, int w, int h,
int x, int y,
int xsrcMask, int ysrcMask);
void DoDrawMonoBitmap(const wxBitmap& bitmap,
int bmp_w, int bmp_h,
int xsrc, int ysrc,
int xdest, int ydest,
int width, int height);
GdkPixmap* MonoToColor(GdkPixmap* monoPixmap, int x, int y, int w, int h) const;
DECLARE_ABSTRACT_CLASS(wxWindowDCImpl)
};