diff options
| author | Manolo Gouy <Manolo> | 2011-04-12 11:38:43 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2011-04-12 11:38:43 +0000 |
| commit | 8b026342ddeffa57a19fd21bfa13f163a5bccecb (patch) | |
| tree | f82bf5293ee64f7f71e1784593fac31b1afc1b3d | |
| parent | 38a3c21ffd80c62d5f1f71a4f93c3c8873137fdf (diff) | |
Following STR #2583, the behaviour of fl_draw_image() with d = 4 on Mac OS is here
made consistent with other platforms, that is, the 4th byte of each pixel is ignored
instead of treated as transparency data.
In the future, the fl_draw_image() signature may be extended with another argument
that would describe if and how transparency information is available.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8581 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
| -rw-r--r-- | src/fl_draw_image_mac.cxx | 4 | ||||
| -rw-r--r-- | test/unittest_images.cxx | 8 |
2 files changed, 2 insertions, 10 deletions
diff --git a/src/fl_draw_image_mac.cxx b/src/fl_draw_image_mac.cxx index 32b365b17..cd370a580 100644 --- a/src/fl_draw_image_mac.cxx +++ b/src/fl_draw_image_mac.cxx @@ -92,8 +92,8 @@ static void innards(const uchar *buf, int X, int Y, int W, int H, tmpBuf ? dataReleaseCB : NULL ); CGImageRef img = CGImageCreate( W, H, 8, 8*delta, linedelta, - //lut, delta&1?kCGImageAlphaNone:kCGImageAlphaNoneSkipLast, - lut, delta&1?kCGImageAlphaNone:kCGImageAlphaLast, + lut, delta&1?kCGImageAlphaNone:kCGImageAlphaNoneSkipLast, + //lut, delta&1?kCGImageAlphaNone:kCGImageAlphaLast, src, 0L, false, kCGRenderingIntentDefault); // draw the image into the destination context if (img) { diff --git a/test/unittest_images.cxx b/test/unittest_images.cxx index 25dfdd2cf..f9f09a09f 100644 --- a/test/unittest_images.cxx +++ b/test/unittest_images.cxx @@ -86,11 +86,7 @@ public: fl_color(FL_BLACK); fl_rectf(xx, yy, 130, 130); fl_color(FL_WHITE); fl_rectf(xx+1, yy+1, 64, 64); fl_color(FL_WHITE); fl_rectf(xx+65, yy+65, 64, 64); -#ifdef __APPLE__ - fl_draw_image(img_rgba, xx+1, yy+1, 128, 128, 4); // Apple: okay w/alpha -#else i_rgba->draw(xx+1,yy+1); // only Fl_RGB_Image->draw() works with alpha -#endif fl_color(FL_BLACK); fl_draw("RGBA", xx+134, yy+64); // top right: Gray @@ -106,11 +102,7 @@ public: fl_color(FL_BLACK); fl_rectf(xx, yy, 130, 130); fl_color(FL_WHITE); fl_rectf(xx+1, yy+1, 64, 64); fl_color(FL_WHITE); fl_rectf(xx+65, yy+65, 64, 64); -#ifdef __APPLE__ - fl_draw_image(img_gray_a, xx+1, yy+1, 128, 128, 2); // Apple: okay w/alpha -#else i_ga->draw(xx+1,yy+1); // only Fl_RGB_Image->draw() works with alpha -#endif fl_color(FL_BLACK); fl_draw("Gray+Alpha", xx+134, yy+64); } }; |
