+ bool hasMask = image.HasMask();
+
+ GC pixmapGC = GrNewGC();
+ Pixmap pixmap = (Pixmap) GetPixmap();
+
+ GC maskGC = 0;
+ Pixmap maskPixmap = 0;
+
+ unsigned char maskR = 0;
+ unsigned char maskG = 0;
+ unsigned char maskB = 0;
+
+ if (hasMask)
+ {
+ maskR = image.GetMaskRed();
+ maskG = image.GetMaskGreen();
+ maskB = image.GetMaskBlue();
+
+ maskGC = GrNewGC();
+ maskPixmap = GrNewPixmap(w, h, 0);
+ if (!maskPixmap)
+ hasMask = FALSE;
+ else
+ {
+ wxMask* mask = new wxMask;
+ mask->SetBitmap((WXPixmap) maskPixmap);
+ SetMask(mask);
+ }
+ }
+
+ GR_COLOR lastPixmapColour = 0;
+ GR_COLOR lastMaskColour = 0;