summaryrefslogtreecommitdiff
path: root/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_image.cxx
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2016-02-13 14:48:13 +0000
committerManolo Gouy <Manolo>2016-02-13 14:48:13 +0000
commit4af616a7a27c3104938bf580502c762becd4417b (patch)
treecf3ab60ea9727c887ccf91d0caca32e5ba523f78 /src/drivers/Quartz/Fl_Quartz_Graphics_Driver_image.cxx
parentc95169ea492a0d1b101f42b3f46d4e8607b9dd4a (diff)
New member function Fl_Quartz_Graphics_Driver::draw_CGImage() used internally for all image drawing.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11165 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/drivers/Quartz/Fl_Quartz_Graphics_Driver_image.cxx')
-rw-r--r--src/drivers/Quartz/Fl_Quartz_Graphics_Driver_image.cxx15
1 files changed, 3 insertions, 12 deletions
diff --git a/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_image.cxx b/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_image.cxx
index 868d81ec8..c15e767a2 100644
--- a/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_image.cxx
+++ b/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_image.cxx
@@ -90,10 +90,7 @@ static void innards(const uchar *buf, int X, int Y, int W, int H,
src, 0L, false, kCGRenderingIntentDefault);
// draw the image into the destination context
if (img) {
- CGRect rect = CGRectMake( X, Y, W, H);
- Fl_X::q_begin_image(rect, 0, 0, W, H);
- CGContextDrawImage(fl_gc, rect, img);
- Fl_X::q_end_image();
+ ((Fl_Quartz_Graphics_Driver*)fl_graphics_driver)->draw_CGImage(img, X,Y,W,H, 0,0,W,H);
// release all allocated resources
CGImageRelease(img);
}
@@ -170,10 +167,7 @@ void Fl_Quartz_Graphics_Driver::draw(Fl_Bitmap *bm, int XP, int YP, int WP, int
return;
}
if (bm->id_ && fl_gc) {
- CGRect rect = { { (CGFloat)X, (CGFloat)Y }, { (CGFloat)W, (CGFloat)H } };
- Fl_X::q_begin_image(rect, cx, cy, bm->w(), bm->h());
- CGContextDrawImage(fl_gc, rect, (CGImageRef)bm->id_);
- Fl_X::q_end_image();
+ draw_CGImage((CGImageRef)bm->id_, X,Y,W,H, cx, cy, bm->w(), bm->h());
}
}
@@ -249,10 +243,7 @@ void Fl_Quartz_Graphics_Driver::draw(Fl_RGB_Image *img, int XP, int YP, int WP,
CGColorSpaceRelease(lut);
CGDataProviderRelease(src);
}
- CGRect rect = CGRectMake(X, Y, W, H);
- Fl_X::q_begin_image(rect, cx, cy, img->w(), img->h());
- CGContextDrawImage(fl_gc, rect, (CGImageRef)img->id_);
- Fl_X::q_end_image();
+ draw_CGImage((CGImageRef)img->id_, X,Y,W,H, cx,cy, img->w(), img->h());
}
}