Enlightenment CVS committal Author : kwo Project : e16 Module : e
Dir : e16/e/src Modified Files: backgrounds.c container.c dialog.c eimage.c eimage.h iconify.c warp.c Log Message: Various anti-alias fixups after recent changes. =================================================================== RCS file: /cvs/e/e16/e/src/backgrounds.c,v retrieving revision 1.92 retrieving revision 1.93 diff -u -3 -r1.92 -r1.93 --- backgrounds.c 6 Apr 2007 22:20:07 -0000 1.92 +++ backgrounds.c 7 Apr 2007 16:18:53 -0000 1.93 @@ -657,7 +657,8 @@ { /* Window, no fg, no offset, and scale to 100%, or tiled, no trans */ pmap = BackgroundCreatePixmap(win, w, h); - EImageRenderOnDrawable(bg->bg.im, win, pmap, 0, 0, 0, w, h); + EImageRenderOnDrawable(bg->bg.im, win, pmap, EIMAGE_ANTI_ALIAS, + 0, 0, w, h); #if 0 /* FIXME - Remove? */ if (x == 0 && y == 0) /* Hmmm. Always true. */ @@ -707,7 +708,8 @@ else { EImageGetSize(bg->bg.im, &ww, &hh); - EImageBlend(im, bg->bg.im, 0, 0, 0, ww, hh, x, y, w, h, 1, 0); + EImageBlend(im, bg->bg.im, EIMAGE_ANTI_ALIAS, 0, 0, ww, hh, + x, y, w, h, 1); } } } @@ -720,10 +722,11 @@ x = ((rw - w) * bg->top.xjust) >> 10; y = ((rh - h) * bg->top.yjust) >> 10; - EImageBlend(im, bg->top.im, 1, 0, 0, ww, hh, x, y, w, h, 0, 0); + EImageBlend(im, bg->top.im, EIMAGE_BLEND | EIMAGE_ANTI_ALIAS, + 0, 0, ww, hh, x, y, w, h, 0); } - EImageRenderOnDrawable(im, win, pmap, 0, 0, 0, rw, rh); + EImageRenderOnDrawable(im, win, pmap, EIMAGE_ANTI_ALIAS, 0, 0, rw, rh); if (im != bg->bg.im) EImageFree(im); =================================================================== RCS file: /cvs/e/e16/e/src/container.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- container.c 6 Apr 2007 22:20:07 -0000 1.9 +++ container.c 7 Apr 2007 16:18:53 -0000 1.10 @@ -1156,8 +1156,8 @@ if (ct->draw_icon_base && ct->im_item_base) { EImageGetSize(ct->im_item_base, &ww, &hh); - EImageBlend(im, ct->im_item_base, 1, 0, 0, ww, hh, - cto->xo, cto->yo, cto->wo, cto->ho, 1, 0); + EImageBlend(im, ct->im_item_base, EIMAGE_BLEND | EIMAGE_ANTI_ALIAS, + 0, 0, ww, hh, cto->xo, cto->yo, cto->wo, cto->ho, 1); } ct->ops->ObjPlace(ct, cto, im); =================================================================== RCS file: /cvs/e/e16/e/src/dialog.c,v retrieving revision 1.183 retrieving revision 1.184 diff -u -3 -r1.183 -r1.184 --- dialog.c 6 Apr 2007 22:20:07 -0000 1.183 +++ dialog.c 7 Apr 2007 16:18:53 -0000 1.184 @@ -446,7 +446,8 @@ db->w - (h + 2 + pad->left + pad->right), h, h, TextclassGetJustification(db->tclass)); - EImageRenderOnDrawable(im, db->win, None, EIMAGE_BLEND, + EImageRenderOnDrawable(im, db->win, None, + EIMAGE_BLEND | EIMAGE_ANTI_ALIAS, pad->left, pad->top, h, h); EImageFree(im); } =================================================================== RCS file: /cvs/e/e16/e/src/eimage.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- eimage.c 6 Apr 2007 22:20:07 -0000 1.14 +++ eimage.c 7 Apr 2007 16:18:53 -0000 1.15 @@ -53,6 +53,20 @@ imlib_context_set_dither(1); } +static void +_EImageFlagsSet(int flags) +{ + imlib_context_set_anti_alias((flags & EIMAGE_ANTI_ALIAS) ? 1 : 0); + imlib_context_set_blend((flags & EIMAGE_BLEND) ? 1 : 0); +} + +static void +_EImageFlagsReset(void) +{ + imlib_context_set_anti_alias(0); + imlib_context_set_blend(0); +} + EImage * EImageLoad(const char *file) { @@ -208,21 +222,17 @@ } void -EImageBlend(EImage * im, EImage * src, int blend, +EImageBlend(EImage * im, EImage * src, int flags, int sx, int sy, int sw, int sh, - int dx, int dy, int dw, int dh, int merge_alpha, int anti_alias) + int dx, int dy, int dw, int dh, int merge_alpha) { imlib_context_set_image(im); - if (anti_alias) - imlib_context_set_anti_alias(1); - if (blend) - imlib_context_set_blend(1); + if (flags) + _EImageFlagsSet(flags); imlib_blend_image_onto_image(src, merge_alpha, sx, sy, sw, sh, dx, dy, dw, dh); - if (blend) - imlib_context_set_blend(0); - if (anti_alias) - imlib_context_set_anti_alias(0); + if (flags) + _EImageFlagsReset(); } void @@ -248,7 +258,7 @@ } void -EImageTile(EImage * im, EImage * tile, int blend, int tw, int th, +EImageTile(EImage * im, EImage * tile, int flags, int tw, int th, int dx, int dy, int dw, int dh, int ox, int oy) { Imlib_Image tim; @@ -258,6 +268,9 @@ if (tw <= 0 || th <= 0) return; + if (flags) + _EImageFlagsSet(flags); + imlib_context_set_image(tile); sw = imlib_image_get_width(); sh = imlib_image_get_height(); @@ -308,8 +321,7 @@ ww = dw - x; if (ww <= 0) break; - imlib_blend_image_onto_image(tim, blend, tx, ty, ww, hh, - x, y, ww, hh); + imlib_blend_image_onto_image(tim, 0, tx, ty, ww, hh, x, y, ww, hh); tx = 0; x += ww; ww = tw; @@ -324,6 +336,9 @@ imlib_free_image(); imlib_context_set_image(im); /* FIXME - Remove */ } + + if (flags) + _EImageFlagsReset(); } EImage * @@ -362,20 +377,6 @@ imlib_context_set_visual(_default_vis); return im; -} - -static void -_EImageFlagsSet(int flags) -{ - imlib_context_set_anti_alias((flags & EIMAGE_ANTI_ALIAS) ? 1 : 0); - imlib_context_set_blend((flags & EIMAGE_BLEND) ? 1 : 0); -} - -static void -_EImageFlagsReset(void) -{ - imlib_context_set_anti_alias(0); - imlib_context_set_blend(0); } void =================================================================== RCS file: /cvs/e/e16/e/src/eimage.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- eimage.h 6 Apr 2007 22:20:07 -0000 1.8 +++ eimage.h 7 Apr 2007 16:18:53 -0000 1.9 @@ -63,13 +63,13 @@ int g, int b, int a); void EImageOrientate(EImage * im, int orientation); -void EImageBlend(EImage * im, EImage * src, int blend, +void EImageBlend(EImage * im, EImage * src, int flags, int sx, int sy, int sw, int sh, int dx, int dy, int dw, int dh, - int merge_alpha, int anti_alias); + int merge_alpha); void EImageBlendCM(EImage * im, EImage * src, EImageColorModifier * icm); -void EImageTile(EImage * im, EImage * tile, int blend, int tw, +void EImageTile(EImage * im, EImage * tile, int flags, int tw, int th, int dx, int dy, int dw, int dh, int ox, int oy); =================================================================== RCS file: /cvs/e/e16/e/src/iconify.c,v retrieving revision 1.224 retrieving revision 1.225 diff -u -3 -r1.224 -r1.225 --- iconify.c 13 Feb 2007 00:13:07 -0000 1.224 +++ iconify.c 7 Apr 2007 16:18:53 -0000 1.225 @@ -606,8 +606,8 @@ return; EImageGetSize(cto->im, &w, &h); - EImageBlend(im, cto->im, 1, 0, 0, w, h, - cto->xi, cto->yi, cto->wi, cto->hi, 1, 1); + EImageBlend(im, cto->im, EIMAGE_BLEND | EIMAGE_ANTI_ALIAS, 0, 0, w, h, + cto->xi, cto->yi, cto->wi, cto->hi, 1); } extern const ContainerOps IconboxOps; =================================================================== RCS file: /cvs/e/e16/e/src/warp.c,v retrieving revision 1.105 retrieving revision 1.106 diff -u -3 -r1.105 -r1.106 --- warp.c 6 Apr 2007 22:20:07 -0000 1.105 +++ warp.c 7 Apr 2007 16:18:53 -0000 1.106 @@ -236,7 +236,8 @@ Conf.warplist.icon_mode); if (im) { - EImageRenderOnDrawable(im, wi->win, None, EIMAGE_BLEND, + EImageRenderOnDrawable(im, wi->win, None, + EIMAGE_BLEND | EIMAGE_ANTI_ALIAS, pad->left + ICON_PAD, ICON_PAD, icon_size, icon_size); EImageFree(im); ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs