Enlightenment CVS committal
Author : kwo
Project : e16
Module : e
Dir : e16/e/src
Modified Files:
iclass.c
Log Message:
Fix rendering of imageclasses not based on images.
===================================================================
RCS file: /cvs/e/e16/e/src/iclass.c,v
retrieving revision 1.138
retrieving revision 1.139
diff -u -3 -r1.138 -r1.139
--- iclass.c 22 Jun 2008 13:34:42 -0000 1.138
+++ iclass.c 22 Jun 2008 13:36:28 -0000 1.139
@@ -1187,7 +1187,6 @@
}
FreePmapMask(&pmm);
- EClearWindow(win);
if ((is->unloadable) || (Conf.memory_paranoia))
{
@@ -1197,21 +1196,32 @@
}
else
{
- /* FIXME - No text */
ImagestateColorsAlloc(is);
- ESetWindowBackground(win, is->bg.pixel);
- EClearWindow(win);
- }
-
- if (is->bevelstyle != BEVEL_NONE)
- {
- GC gc;
+ if (is->bevelstyle == BEVEL_NONE && !text)
+ {
+ ESetWindowBackground(win, is->bg.pixel);
+ }
+ else
+ {
+ Pixmap pmap;
+ GC gc;
- gc = EXCreateGC(WinGetXwin(win), 0, NULL);
- ImagestateDrawBevel(is, WinGetXwin(win), gc, w, h);
- EXFreeGC(gc);
+ pmap = EGetWindowBackgroundPixmap(win);
+ gc = EXCreateGC(WinGetXwin(win), 0, NULL);
+ XSetFillStyle(disp, gc, FillSolid);
+ XSetForeground(disp, gc, is->bg.pixel);
+ XFillRectangle(disp, pmap, gc, 0, 0, w, h);
+ if (is->bevelstyle != BEVEL_NONE)
+ ImagestateDrawBevel(is, pmap, gc, w, h);
+ if (ts && text)
+ TextstateTextDraw(ts, win, pmap, text, 0, 0, w, h,
+ &(ic->padding), 0,
+ TextclassGetJustification(tc), flags);
+ EXFreeGC(gc);
+ }
}
+ EClearWindow(win);
}
void
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs