Author: manolo
Date: 2012-03-17 10:27:15 -0700 (Sat, 17 Mar 2012)
New Revision: 9290
Log:
Removed duplicated code when printing pixmap on WIN32.
Modified:
branches/branch-3.0/src/fltk3/Pixmap.cxx
Modified: branches/branch-3.0/src/fltk3/Pixmap.cxx
===================================================================
--- branches/branch-3.0/src/fltk3/Pixmap.cxx 2012-03-17 16:42:03 UTC (rev
9289)
+++ branches/branch-3.0/src/fltk3/Pixmap.cxx 2012-03-17 17:27:15 UTC (rev
9290)
@@ -156,25 +156,13 @@
if(hMod) fl_TransparentBlt = (fl_transp_func)GetProcAddress(hMod,
"TransparentBlt");
}
if (fl_TransparentBlt) {
- fltk3::Offscreen tmp_id = fl_create_offscreen(pxm->w(), pxm->h());
- fl_begin_offscreen(tmp_id);
- uchar *bitmap = 0;
- fl_mask_bitmap = &bitmap;
- // draw pixmap to offscreen
- fltk3::draw_pixmap(pxm->data(), 0, 0);
- fl_mask_bitmap = 0;
- if (bitmap) {
- delete[] bitmap;
- }
- fl_end_offscreen();
HDC new_gc = CreateCompatibleDC(fl_gc);
int save = SaveDC(new_gc);
- SelectObject(new_gc, (void*)tmp_id);
+ SelectObject(new_gc, (void*)pxm->id_);
// print all of offscreen but its parts in background color
fl_TransparentBlt(fl_gc, X, Y, W, H, new_gc, cx, cy, pxm->w(), pxm->h(),
win_pixmap_bg_color );
RestoreDC(new_gc,save);
DeleteDC(new_gc);
- fl_delete_offscreen(tmp_id);
}
else {
copy_offscreen(X, Y, W, H, (fltk3::Offscreen)pxm->id_, cx, cy);
_______________________________________________
fltk-commit mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-commit