Update bitmap tests for wxQt

This commit is contained in:
ali kettab 2023-09-13 20:40:39 +01:00
parent 36679cf896
commit d9e3efcf20

View file

@ -50,10 +50,22 @@
typedef wxPixelFormat<unsigned char, 32, 2, 1, 0> wxNative32PixelFormat;
typedef wxPixelData<wxBitmap, wxNative32PixelFormat> wxNative32PixelData;
#endif // __WXMSW__
#ifdef __WXOSX__
#if defined(__WXOSX__) || defined(__WXQT__)
// 32 bpp xRGB bitmaps are native ones
typedef wxNativePixelData wxNative32PixelData;
#endif // __WXOSX__
#endif // __WXOSX__ || __WXQT__
// masked/unmasked colours are revered in wxQt:
#ifndef __WXQT__
#define wxMASK_COLOUR_OPAQUE wxWHITE
#define wxMASK_COLOUR_TRANSPARENT wxBLACK
#else // __WXQT__
#define wxMASK_COLOUR_OPAQUE wxBLACK
#define wxMASK_COLOUR_TRANSPARENT wxWHITE
#endif // !__WXQT__
static const wxColour wxMASK_COLOUR = *wxMASK_COLOUR_OPAQUE;
// ----------------------------------------------------------------------------
// tests
@ -82,8 +94,8 @@ TEST_CASE("BitmapTestCase::Monochrome", "[bitmap][monochrome]")
REQUIRE(mono.IsOk());
REQUIRE(mono.GetDepth() == 1);
// wxMonoPixelData only exists in wxMSW
#if defined(__WXMSW__)
// wxMonoPixelData only exists in wxMSW and wxQt
#if defined(__WXMSW__) || defined(__WXQT__)
// draw lines on top and left, but leaving blank top and left lines
{
wxMonoPixelData data(mono);
@ -103,8 +115,8 @@ TEST_CASE("BitmapTestCase::Monochrome", "[bitmap][monochrome]")
}
TempFile mono_lines_horse("mono_lines_horse.bmp");
REQUIRE(mono.SaveFile(mono_lines_horse.GetName(), wxBITMAP_TYPE_BMP));
#endif // __WXMSW__
#endif // !__WXGTK__
#endif // __WXMSW__ || __WXQT__
#endif // !__WXGTK__
}
TEST_CASE("BitmapTestCase::Mask", "[bitmap][mask]")
@ -225,7 +237,7 @@ TEST_CASE("BitmapTestCase::ToImage", "[bitmap][image][convertto]")
wxColour bmpc(iBmp.Red(), iBmp.Green(), iBmp.Blue());
wxColour maskc(iMask.Red(), iMask.Green(), iMask.Blue());
wxColour imgc(image.GetRed(x, y), image.GetGreen(x, y), image.GetBlue(x, y));
if ( maskc == *wxWHITE )
if ( maskc == wxMASK_COLOUR )
{
CHECK_EQUAL_COLOUR_RGB(imgc, bmpc);
unmaskedPixelsCount++;
@ -253,12 +265,12 @@ TEST_CASE("BitmapTestCase::ToImage", "[bitmap][image][convertto]")
const wxColour clrBg(*wxGREEN);
const unsigned char alpha = 92;
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
const wxColour clrFgAlpha(((clrFg.Red() * alpha) + 127) / 255, ((clrFg.Green() * alpha) + 127) / 255, ((clrFg.Blue() * alpha) + 127) / 255);
#else
const wxColour clrFgAlpha(clrFg);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
wxAlphaPixelData data(bmp);
REQUIRE(data);
@ -306,13 +318,13 @@ TEST_CASE("BitmapTestCase::ToImage", "[bitmap][image][convertto]")
{
wxColour bmpc(iBmp.Red(), iBmp.Green(), iBmp.Blue(), iBmp.Alpha());
wxColour imgc(image.GetRed(x, y), image.GetGreen(x, y), image.GetBlue(x, y), image.GetAlpha(x,y));
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// Premultiplied values
unsigned char r = ((imgc.Red() * imgc.Alpha()) + 127) / 255;
unsigned char g = ((imgc.Green() * imgc.Alpha()) + 127) / 255;
unsigned char b = ((imgc.Blue() * imgc.Alpha()) + 127) / 255;
imgc.Set(r, g, b, imgc.Alpha());
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
CHECK_EQUAL_COLOUR_RGBA(imgc, bmpc);
}
rowStartBmp.OffsetY(dataBmp, 1);
@ -330,12 +342,12 @@ TEST_CASE("BitmapTestCase::ToImage", "[bitmap][image][convertto]")
const wxColour clrFg(*wxCYAN);
const wxColour clrBg(*wxGREEN);
const unsigned char alpha = 92;
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
const wxColour clrFgAlpha(((clrFg.Red() * alpha) + 127) / 255, ((clrFg.Green() * alpha) + 127) / 255, ((clrFg.Blue() * alpha) + 127) / 255);
#else
const wxColour clrFgAlpha(clrFg);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
wxAlphaPixelData data(bmp);
REQUIRE(data);
@ -410,15 +422,15 @@ TEST_CASE("BitmapTestCase::ToImage", "[bitmap][image][convertto]")
wxColour bmpc(iBmp.Red(), iBmp.Green(), iBmp.Blue(), iBmp.Alpha());
wxColour maskc(iMask.Red(), iMask.Green(), iMask.Blue());
wxColour imgc(image.GetRed(x, y), image.GetGreen(x, y), image.GetBlue(x, y), image.GetAlpha(x,y));
if ( maskc == *wxWHITE )
if ( maskc == wxMASK_COLOUR )
{
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// Premultiplied values
unsigned char r = ((imgc.Red() * imgc.Alpha()) + 127) / 255;
unsigned char g = ((imgc.Green() * imgc.Alpha()) + 127) / 255;
unsigned char b = ((imgc.Blue() * imgc.Alpha()) + 127) / 255;
imgc.Set(r, g, b, imgc.Alpha());
#endif // __WXMSW__ || __WXOSX
#endif // __WXMSW__ || __WXOSX || __WXQT__
CHECK_EQUAL_COLOUR_RGBA(imgc, bmpc);
unmaskedPixelsCount++;
}
@ -506,7 +518,7 @@ TEST_CASE("BitmapTestCase::FromImage", "[bitmap][image][convertfrom]")
wxColour maskc(iMask.Red(), iMask.Green(), iMask.Blue());
wxColour imgc(img.GetRed(x, y), img.GetGreen(x, y), img.GetBlue(x, y));
CHECK_EQUAL_COLOUR_RGB(bmpc, imgc);
wxColour c = maskc == *wxWHITE ? fillCol : maskCol;
wxColour c = maskc == wxMASK_COLOUR ? fillCol : maskCol;
CHECK_EQUAL_COLOUR_RGB(bmpc, c);
}
rowStartBmp.OffsetY(dataBmp, 1);
@ -545,13 +557,13 @@ TEST_CASE("BitmapTestCase::FromImage", "[bitmap][image][convertfrom]")
{
wxColour bmpc(iBmp.Red(), iBmp.Green(), iBmp.Blue(), iBmp.Alpha());
wxColour imgc(img.GetRed(x, y), img.GetGreen(x, y), img.GetBlue(x, y), img.GetAlpha(x, y));
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// Premultiplied values
unsigned char r = ((imgc.Red() * imgc.Alpha()) + 127) / 255;
unsigned char g = ((imgc.Green() * imgc.Alpha()) + 127) / 255;
unsigned char b = ((imgc.Blue() * imgc.Alpha()) + 127) / 255;
imgc.Set(r, g, b, imgc.Alpha());
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
CHECK_EQUAL_COLOUR_RGBA(bmpc, imgc);
}
rowStartBmp.OffsetY(dataBmp, 1);
@ -596,23 +608,23 @@ TEST_CASE("BitmapTestCase::FromImage", "[bitmap][image][convertfrom]")
wxColour bmpc(iBmp.Red(), iBmp.Green(), iBmp.Blue(), iBmp.Alpha());
wxColour maskc(iMask.Red(), iMask.Green(), iMask.Blue());
wxColour imgc(img.GetRed(x, y), img.GetGreen(x, y), img.GetBlue(x, y), img.GetAlpha(x, y));
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// Premultiplied values
unsigned char r = ((imgc.Red() * imgc.Alpha()) + 127) / 255;
unsigned char g = ((imgc.Green() * imgc.Alpha()) + 127) / 255;
unsigned char b = ((imgc.Blue() * imgc.Alpha()) + 127) / 255;
imgc.Set(r, g, b, imgc.Alpha());
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
CHECK_EQUAL_COLOUR_RGBA(bmpc, imgc);
wxColour c = maskc == *wxWHITE ? fillCol : maskCol;
#if defined(__WXMSW__) || defined(__WXOSX__)
wxColour c = maskc == wxMASK_COLOUR ? fillCol : maskCol;
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// Premultiplied values
r = ((c.Red() * imgc.Alpha()) + 127) / 255;
g = ((c.Green() * imgc.Alpha()) + 127) / 255;
b = ((c.Blue() * imgc.Alpha()) + 127) / 255;
c.Set(r, g, b);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
CHECK_EQUAL_COLOUR_RGB(bmpc, c);
}
rowStartBmp.OffsetY(dataBmp, 1);
@ -810,12 +822,12 @@ TEST_CASE("BitmapTestCase::DrawAlpha", "[bitmap][draw][alpha]")
const wxColour clrBg(*wxGREEN);
const unsigned char alpha = 92;
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
const wxColour clrFgAlpha(((clrFg.Red() * alpha) + 127) / 255, ((clrFg.Green() * alpha) + 127) / 255, ((clrFg.Blue() * alpha) + 127) / 255);
#else
const wxColour clrFgAlpha(clrFg);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
// Bitmap to be drawn
wxBitmap bmp(w, h, 32);
@ -873,7 +885,7 @@ TEST_CASE("BitmapTestCase::DrawAlpha", "[bitmap][draw][alpha]")
p1.OffsetX(data24, w / 4); // left side is opaque
ASSERT_EQUAL_COLOUR_RGB(p1, clrFg);
p1.OffsetX(data24, w / 2); // right side is with alpha
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
ASSERT_EQUAL_RGB(p1, clrFgAlpha.Red() + (clrBg.Red() * (255 - alpha) + 127) / 255,
clrFgAlpha.Green() + (clrBg.Green() * (255 - alpha) + 127) / 255,
@ -882,9 +894,9 @@ TEST_CASE("BitmapTestCase::DrawAlpha", "[bitmap][draw][alpha]")
ASSERT_EQUAL_RGB(p1, (clrFg.Red() * alpha + clrBg.Red() * (255 - alpha) + 127) / 255,
(clrFg.Green() * alpha + clrBg.Green() * (255 - alpha) + 127) / 255,
(clrFg.Blue() * alpha + clrBg.Blue() * (255 - alpha) + 127) / 255);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// Drawing the bitmap on 32 bpp xRGB target
wxBitmap bmpOut32(w, h, 32);
REQUIRE_FALSE(bmpOut32.HasAlpha());
@ -910,7 +922,7 @@ TEST_CASE("BitmapTestCase::DrawAlpha", "[bitmap][draw][alpha]")
ASSERT_EQUAL_RGB(p2, clrFgAlpha.Red() + (clrBg.Red() * (255 - alpha) + 127) / 255,
clrFgAlpha.Green() + (clrBg.Green() * (255 - alpha) + 127) / 255,
clrFgAlpha.Blue() + (clrBg.Blue() * (255 - alpha) + 127) / 255);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
}
TEST_CASE("BitmapTestCase::DrawAlphaWithMask", "[bitmap][draw][alpha][withmask]")
@ -925,12 +937,12 @@ TEST_CASE("BitmapTestCase::DrawAlphaWithMask", "[bitmap][draw][alpha][withmask]"
const wxColour clrBg(*wxGREEN);
const unsigned char alpha = 92;
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
const wxColour clrFgAlpha(((clrFg.Red() * alpha) + 127) / 255, ((clrFg.Green() * alpha) + 127) / 255, ((clrFg.Blue() * alpha) + 127) / 255);
#else
const wxColour clrFgAlpha(clrFg);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
// Bitmap with mask to be drawn
wxBitmap bmp(w, h, 32);
@ -993,7 +1005,7 @@ TEST_CASE("BitmapTestCase::DrawAlphaWithMask", "[bitmap][draw][alpha][withmask]"
p1.OffsetX(data24, w / 4); // drawn area - left side opaque
ASSERT_EQUAL_COLOUR_RGB(p1, clrFg);
p1.OffsetX(data24, w / 2); // drawn area - right side with alpha
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
ASSERT_EQUAL_RGB(p1, clrFgAlpha.Red() + (clrBg.Red() * (255 - alpha) + 127) / 255,
clrFgAlpha.Green() + (clrBg.Green() * (255 - alpha) + 127) / 255,
@ -1002,7 +1014,7 @@ TEST_CASE("BitmapTestCase::DrawAlphaWithMask", "[bitmap][draw][alpha][withmask]"
ASSERT_EQUAL_RGB(p1, (clrFg.Red() * alpha + clrBg.Red() * (255 - alpha) + 127) / 255,
(clrFg.Green() * alpha + clrBg.Green() * (255 - alpha) + 127) / 255,
(clrFg.Blue() * alpha + clrBg.Blue() * (255 - alpha) + 127) / 255);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
p1 = rowStart1;
p1.OffsetY(data24, h / 2);
p1.OffsetX(data24, w / 4); // masked area - left side
@ -1033,7 +1045,7 @@ TEST_CASE("BitmapTestCase::DrawAlphaWithMask", "[bitmap][draw][alpha][withmask]"
p1.OffsetX(data24, w / 4); // left upper side opaque
ASSERT_EQUAL_COLOUR_RGB(p1, clrFg);
p1.OffsetX(data24, w / 2); // right upper side with alpha
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
ASSERT_EQUAL_RGB(p1, clrFgAlpha.Red() + (clrBg.Red() * (255 - alpha) + 127) / 255,
clrFgAlpha.Green() + (clrBg.Green() * (255 - alpha) + 127) / 255,
@ -1042,13 +1054,13 @@ TEST_CASE("BitmapTestCase::DrawAlphaWithMask", "[bitmap][draw][alpha][withmask]"
ASSERT_EQUAL_RGB(p1, (clrFg.Red() * alpha + clrBg.Red() * (255 - alpha) + 127) / 255,
(clrFg.Green() * alpha + clrBg.Green() * (255 - alpha) + 127) / 255,
(clrFg.Blue() * alpha + clrBg.Blue() * (255 - alpha) + 127) / 255);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
p1 = rowStart1;
p1.OffsetY(data24, h / 2);
p1.OffsetX(data24, w / 4); // left lower side - same colour as upper
ASSERT_EQUAL_COLOUR_RGB(p1, clrFg);
p1.OffsetX(data24, w / 2); // right lower side - same colour as upper
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
ASSERT_EQUAL_RGB(p1, clrFgAlpha.Red() + (clrBg.Red() * (255 - alpha) + 127) / 255,
clrFgAlpha.Green() + (clrBg.Green() * (255 - alpha) + 127) / 255,
@ -1057,10 +1069,10 @@ TEST_CASE("BitmapTestCase::DrawAlphaWithMask", "[bitmap][draw][alpha][withmask]"
ASSERT_EQUAL_RGB(p1, (clrFg.Red() * alpha + clrBg.Red() * (255 - alpha) + 127) / 255,
(clrFg.Green() * alpha + clrBg.Green() * (255 - alpha) + 127) / 255,
(clrFg.Blue() * alpha + clrBg.Blue() * (255 - alpha) + 127) / 255);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
}
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// Drawing the bitmap on 32 bpp xRGB target using mask
{
wxBitmap bmpOut32(w, h, 32);
@ -1133,7 +1145,7 @@ TEST_CASE("BitmapTestCase::DrawAlphaWithMask", "[bitmap][draw][alpha][withmask]"
clrFgAlpha.Green() + (clrBg.Green() * (255 - alpha) + 127) / 255,
clrFgAlpha.Blue() + (clrBg.Blue() * (255 - alpha) + 127) / 255);
}
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
}
TEST_CASE("BitmapTestCase::SubBitmapNonAlpha", "[bitmap][subbitmap][nonalpha]")
@ -1287,13 +1299,13 @@ TEST_CASE("BitmapTestCase::SubBitmapNonAlphaWithMask", "[bitmap][subbitmap][nona
p.OffsetX(data, w / 2); // bottom-right point
maskClrBottomRight = wxColour(p.Red(), p.Green(), p.Blue());
}
CHECK(maskClrTopLeft == *wxWHITE);
CHECK(maskClrTopRight == *wxWHITE);
CHECK(maskClrBottomLeft == *wxBLACK);
CHECK(maskClrBottomRight == *wxBLACK);
CHECK(maskClrTopLeft == *wxMASK_COLOUR_OPAQUE);
CHECK(maskClrTopRight == *wxMASK_COLOUR_OPAQUE);
CHECK(maskClrBottomLeft == *wxMASK_COLOUR_TRANSPARENT);
CHECK(maskClrBottomRight == *wxMASK_COLOUR_TRANSPARENT);
// wxMonoPixelData only exists in wxMSW
#if defined(__WXMSW__)
// wxMonoPixelData only exists in wxMSW and wxQt
#if defined(__WXMSW__) || defined(__WXQT__)
bool maskValueTopLeft;
bool maskValueTopRight;
bool maskValueBottomLeft;
@ -1322,7 +1334,7 @@ TEST_CASE("BitmapTestCase::SubBitmapNonAlphaWithMask", "[bitmap][subbitmap][nona
CHECK(maskValueTopRight == true);
CHECK(maskValueBottomLeft == false);
CHECK(maskValueBottomRight == false);
#endif // __WXMSW__
#endif // __WXMSW__ || __WXQT__
wxBitmap subBmpMask = subBmp.GetMask()->GetBitmap();
// Check sub bitmap mask attributes
@ -1352,8 +1364,8 @@ TEST_CASE("BitmapTestCase::SubBitmapNonAlphaWithMask", "[bitmap][subbitmap][nona
ASSERT_EQUAL_COLOUR_RGB(p, maskClrBottomRight);
}
// wxMonoPixelData only exists in wxMSW
#if defined(__WXMSW__)
// wxMonoPixelData only exists in wxMSW and wxQt
#if defined(__WXMSW__) || defined(__WXQT__)
{
REQUIRE(subBmpMask.GetDepth() == 1);
wxMonoPixelData data(subBmpMask);
@ -1373,7 +1385,7 @@ TEST_CASE("BitmapTestCase::SubBitmapNonAlphaWithMask", "[bitmap][subbitmap][nona
CHECK(p.Pixel() == maskValueBottomRight);
}
REQUIRE(subBmpMask.GetDepth() == 1);
#endif // __WXMSW__
#endif // __WXMSW__ || __WXQT__
}
TEST_CASE("BitmapTestCase::SubBitmapAlphaWithMask", "[bitmap][subbitmap][alpha][withmask]")
@ -1388,12 +1400,12 @@ TEST_CASE("BitmapTestCase::SubBitmapAlphaWithMask", "[bitmap][subbitmap][alpha][
const wxColour clrLeft(*wxCYAN);
const unsigned char alpha = 92;
#if defined(__WXMSW__) || defined(__WXOSX__)
#if defined(__WXMSW__) || defined(__WXOSX__) || defined(__WXQT__)
// premultiplied values
const wxColour clrRight(((clrLeft.Red() * alpha) + 127) / 255, ((clrLeft.Green() * alpha) + 127) / 255, ((clrLeft.Blue() * alpha) + 127) / 255, alpha);
#else
const wxColour clrRight(clrLeft.Red(), clrLeft.Green(), clrLeft.Blue(), alpha);
#endif // __WXMSW__ || __WXOSX__
#endif // __WXMSW__ || __WXOSX__ || __WXQT__
wxBitmap bmp(w, h, 32);
#if defined(__WXMSW__) || defined(__WXOSX__)
@ -1489,13 +1501,13 @@ TEST_CASE("BitmapTestCase::SubBitmapAlphaWithMask", "[bitmap][subbitmap][alpha][
p.OffsetX(data, w / 2); // bottom-right point
maskClrBottomRight = wxColour(p.Red(), p.Green(), p.Blue());
}
CHECK(maskClrTopLeft == *wxWHITE);
CHECK(maskClrTopRight == *wxWHITE);
CHECK(maskClrBottomLeft == *wxBLACK);
CHECK(maskClrBottomRight == *wxBLACK);
CHECK(maskClrTopLeft == *wxMASK_COLOUR_OPAQUE);
CHECK(maskClrTopRight == *wxMASK_COLOUR_OPAQUE);
CHECK(maskClrBottomLeft == *wxMASK_COLOUR_TRANSPARENT);
CHECK(maskClrBottomRight == *wxMASK_COLOUR_TRANSPARENT);
// wxMonoPixelData only exists in wxMSW
#if defined(__WXMSW__)
// wxMonoPixelData only exists in wxMSW and wxQt
#if defined(__WXMSW__) || defined(__WXQT__)
bool maskValueTopLeft;
bool maskValueTopRight;
bool maskValueBottomLeft;
@ -1524,7 +1536,7 @@ TEST_CASE("BitmapTestCase::SubBitmapAlphaWithMask", "[bitmap][subbitmap][alpha][
CHECK(maskValueTopRight == true);
CHECK(maskValueBottomLeft == false);
CHECK(maskValueBottomRight == false);
#endif // __WXMSW__
#endif // __WXMSW__ || __WXQT__
wxBitmap subBmpMask = subBmp.GetMask()->GetBitmap();
// Check sub bitmap mask attributes
@ -1554,8 +1566,8 @@ TEST_CASE("BitmapTestCase::SubBitmapAlphaWithMask", "[bitmap][subbitmap][alpha][
ASSERT_EQUAL_RGB(p, maskClrBottomRight.Red(), maskClrBottomRight.Green(), maskClrBottomRight.Blue());
}
// wxMonoPixelData only exists in wxMSW
#if defined(__WXMSW__)
// wxMonoPixelData only exists in wxMSW and wxQt
#if defined(__WXMSW__) || defined(__WXQT__)
{
REQUIRE(subBmpMask.GetDepth() == 1);
wxMonoPixelData data(subBmpMask);
@ -1575,7 +1587,7 @@ TEST_CASE("BitmapTestCase::SubBitmapAlphaWithMask", "[bitmap][subbitmap][alpha][
CHECK(p.Pixel() == maskValueBottomRight);
}
REQUIRE(subBmpMask.GetDepth() == 1);
#endif // __WXMSW__
#endif // __WXMSW__ || __WXQT__
}
namespace Catch