Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
      Tag: branch-exp
        E.h backgrounds.c borders.c text.c 


Log Message:
Merge.
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.314.2.73
retrieving revision 1.314.2.74
diff -u -3 -r1.314.2.73 -r1.314.2.74
--- E.h 15 Dec 2004 22:17:09 -0000      1.314.2.73
+++ E.h 18 Dec 2004 00:00:54 -0000      1.314.2.74
@@ -658,6 +658,7 @@
    char                no_expose;
    char                left;
    ImageState         *is;
+   TextState          *ts;
 }
 EWinBit;
 
@@ -2196,6 +2197,8 @@
                                   const char *text);
 
 /* text.c */
+TextState          *TextGetState(TextClass * tclass, int active, int sticky,
+                                int state);
 void                TextSize(TextClass * tclass, int active, int sticky,
                             int state, const char *text, int *width,
                             int *height, int fsize);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/backgrounds.c,v
retrieving revision 1.5.2.14
retrieving revision 1.5.2.15
diff -u -3 -r1.5.2.14 -r1.5.2.15
--- backgrounds.c       30 Oct 2004 15:04:27 -0000      1.5.2.14
+++ backgrounds.c       18 Dec 2004 00:00:57 -0000      1.5.2.15
@@ -592,7 +592,7 @@
             /* The rest that require some more work */
             dpmap = ecore_x_pixmap_new(win, rw, rh, depth);
             gc = ecore_x_gc_new(dpmap);
-            if (!bg->bg_tile)
+            if (!hasbg || !bg->bg_tile)
               {
                  XSetForeground(disp, gc, bg->bg_solid.pixel);
                  XFillRectangle(disp, dpmap, gc, 0, 0, rw, rh);
@@ -701,16 +701,11 @@
 
    bg = FindItem(bgid, 0, LIST_FINDBY_NAME, LIST_TYPE_BACKGROUND);
 
-   if (bg && (!exists(thumb) || moddate(thumb) < moddate(file)))
-     {
-       /* The thumbnail is gone or outdated - regererate */
-       BackgroundDestroy(bg);
-       bg = NULL;
-     }
-
-   if (bg)
+   if (bg && exists(thumb) && moddate(thumb) > moddate(file))
       return bg;
 
+   /* The thumbnail is gone or outdated - regererate */
+
    im = imlib_load_image(file);
    if (!im)
       return NULL;
@@ -732,6 +727,10 @@
    imlib_save_image(thumb);
    imlib_free_image_and_decache();
 
+   /* Quit if the background itself already exists */
+   if (bg)
+      return bg;
+
    scr_asp = (VRoot.w << 16) / VRoot.h;
    im_asp = (width << 16) / height;
    if (width == height)
@@ -907,6 +906,7 @@
    char                s[FILEPATH_LEN_MAX];
    char                s2[FILEPATH_LEN_MAX];
    int                 ii1;
+   int                 r, g, b;
    int                 i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0;
    int                 j1 = 0, j2 = 0, j3 = 0, j4 = 0, j5 = 0;
    char               *bg1 = 0;
@@ -1044,9 +1044,9 @@
             break;
 
          case BG_RGB:
-            i1 = i2 = i3 = 0;
-            sscanf(s, "%*s %d %d %d", &i1, &i2, &i3);
-            ESetColor(&xclr, i1, i2, i3);
+            r = g = b = 0;
+            sscanf(s, "%*s %d %d %d", &r, &g, &b);
+            ESetColor(&xclr, r, g, b);
             if (ignore)
                bg->bg_solid = xclr;
             break;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/borders.c,v
retrieving revision 1.221.2.19
retrieving revision 1.221.2.20
diff -u -3 -r1.221.2.19 -r1.221.2.20
--- borders.c   5 Dec 2004 11:07:20 -0000       1.221.2.19
+++ borders.c   18 Dec 2004 00:00:57 -0000      1.221.2.20
@@ -86,17 +86,23 @@
 {
    EWinBit            *ewb = &ewin->bits[i];
    ImageState         *is;
+   TextState          *ts;
    const char         *title;
 
    if (ewb->win == None)
       return;
 
-   is =
-      ImageclassGetImageState(ewin->border->part[i].iclass, 
ewin->bits[i].state,
-                             ewin->active, EoIsSticky(ewin));
-   if (!force && ewin->bits[i].is == is)
+   is = ImageclassGetImageState(ewin->border->part[i].iclass,
+                               ewin->bits[i].state,
+                               ewin->active, EoIsSticky(ewin));
+   ts = NULL;
+   if (ewin->border->part[i].tclass)
+      ts = TextGetState(ewin->border->part[i].tclass, ewin->active,
+                       EoIsSticky(ewin), ewin->bits[i].state);
+   if (!force && ewin->bits[i].is == is && ewin->bits[i].ts == ts)
       return;
    ewin->bits[i].is = is;
+   ewin->bits[i].ts = ts;
 
    ImageclassApply(ewin->border->part[i].iclass, ewb->win,
                   ewb->w, ewb->h, ewin->active,
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/text.c,v
retrieving revision 1.43.2.4
retrieving revision 1.43.2.5
diff -u -3 -r1.43.2.4 -r1.43.2.5
--- text.c      18 Sep 2004 13:32:29 -0000      1.43.2.4
+++ text.c      18 Dec 2004 00:01:01 -0000      1.43.2.5
@@ -31,7 +31,7 @@
 static void         TextDrawRotBack(Window win, Drawable drawable, int x, int 
y,
                                    int w, int h, TextState * ts);
 
-static TextState   *
+TextState          *
 TextGetState(TextClass * tclass, int active, int sticky, int state)
 {
    EDBUG(5, "TextGetState");




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
http://productguide.itmanagersjournal.com/
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to