]> Pileus Git - ~andy/gtk/commitdiff
use the most significant bits of the GdkColor components (#89703).
authorSven Neumann <sven@gimp.org>
Fri, 13 Sep 2002 16:11:50 +0000 (16:11 +0000)
committerSven Neumann <neo@src.gnome.org>
Fri, 13 Sep 2002 16:11:50 +0000 (16:11 +0000)
2002-09-13  Sven Neumann  <sven@gimp.org>

* gdk/gdkpixbuf-drawable.c: use the most significant bits of the
GdkColor components (#89703).

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gdk/gdkpixbuf-drawable.c

index 7cf31f6a6cda0604f4385611b345e7c7e0d9c707..5b52c814bdfd4d09f806f5f079c29d7b44103ac2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2002-09-13  Sven Neumann  <sven@gimp.org>
+
+       * gdk/gdkpixbuf-drawable.c: use the most significant bits of the
+       GdkColor components (#89703).
+
 2002-09-12  Tor Lillqvist  <tml@iki.fi>
 
        * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Use correct
index 7cf31f6a6cda0604f4385611b345e7c7e0d9c707..5b52c814bdfd4d09f806f5f079c29d7b44103ac2 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-13  Sven Neumann  <sven@gimp.org>
+
+       * gdk/gdkpixbuf-drawable.c: use the most significant bits of the
+       GdkColor components (#89703).
+
 2002-09-12  Tor Lillqvist  <tml@iki.fi>
 
        * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Use correct
index 7cf31f6a6cda0604f4385611b345e7c7e0d9c707..5b52c814bdfd4d09f806f5f079c29d7b44103ac2 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-13  Sven Neumann  <sven@gimp.org>
+
+       * gdk/gdkpixbuf-drawable.c: use the most significant bits of the
+       GdkColor components (#89703).
+
 2002-09-12  Tor Lillqvist  <tml@iki.fi>
 
        * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Use correct
index 7cf31f6a6cda0604f4385611b345e7c7e0d9c707..5b52c814bdfd4d09f806f5f079c29d7b44103ac2 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-13  Sven Neumann  <sven@gimp.org>
+
+       * gdk/gdkpixbuf-drawable.c: use the most significant bits of the
+       GdkColor components (#89703).
+
 2002-09-12  Tor Lillqvist  <tml@iki.fi>
 
        * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Use correct
index 7cf31f6a6cda0604f4385611b345e7c7e0d9c707..5b52c814bdfd4d09f806f5f079c29d7b44103ac2 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-13  Sven Neumann  <sven@gimp.org>
+
+       * gdk/gdkpixbuf-drawable.c: use the most significant bits of the
+       GdkColor components (#89703).
+
 2002-09-12  Tor Lillqvist  <tml@iki.fi>
 
        * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Use correct
index 7cf31f6a6cda0604f4385611b345e7c7e0d9c707..5b52c814bdfd4d09f806f5f079c29d7b44103ac2 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-13  Sven Neumann  <sven@gimp.org>
+
+       * gdk/gdkpixbuf-drawable.c: use the most significant bits of the
+       GdkColor components (#89703).
+
 2002-09-12  Tor Lillqvist  <tml@iki.fi>
 
        * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Use correct
index ec7d650a7aa8f3226b0055b5ab77251a63ef05a4..042db48781ad2ce977bee64abf467d37da4be27c 100644 (file)
@@ -204,9 +204,9 @@ rgb1 (GdkImage    *image,
                                   (0x80 >> (xx & 7)) :
                                   (1 << (xx & 7)));
 
-         *o++ = colormap->colors[data].red;
-         *o++ = colormap->colors[data].green;
-         *o++ = colormap->colors[data].blue;
+         *o++ = colormap->colors[data].red   >> 8;
+         *o++ = colormap->colors[data].green >> 8;
+         *o++ = colormap->colors[data].blue  >> 8;
        }
       srow += bpl;
       orow += rowstride;
@@ -251,9 +251,9 @@ rgb1a (GdkImage    *image,
                                   (0x80 >> (xx & 7)) :
                                   (1 << (xx & 7)));
 
-          *o++ = colormap->colors[data].red;
-         *o++ = colormap->colors[data].green;
-         *o++ = colormap->colors[data].blue;
+          *o++ = colormap->colors[data].red   >> 8;
+         *o++ = colormap->colors[data].green >> 8;
+         *o++ = colormap->colors[data].blue  >> 8;
          *o++ = 255;
        }
       srow += bpl;
@@ -296,9 +296,9 @@ rgb8 (GdkImage    *image,
       for (xx = x1; xx < x2; xx++)
         {
           data = *s++ & mask;
-          *o++ = colormap->colors[data].red;
-          *o++ = colormap->colors[data].green;
-          *o++ = colormap->colors[data].blue;
+          *o++ = colormap->colors[data].red   >> 8;
+          *o++ = colormap->colors[data].green >> 8;
+          *o++ = colormap->colors[data].blue  >> 8;
         }
       srow += bpl;
       orow += rowstride;
@@ -338,14 +338,14 @@ rgb8a (GdkImage    *image,
     {
 #ifdef LITTLE
       remap[xx] = 0xff000000
-       | colormap->colors[xx].blue << 16
-       | colormap->colors[xx].green << 8
-       | colormap->colors[xx].red;
+       | (colormap->colors[xx].blue  & 0xff00) << 8
+       | (colormap->colors[xx].green & 0xff00)
+       | (colormap->colors[xx].red   >> 8);
 #else
       remap[xx] = 0xff
-       | colormap->colors[xx].red << 24
-       | colormap->colors[xx].green << 16
-       | colormap->colors[xx].blue << 8;
+       | (colormap->colors[xx].red   & 0xff00) << 16
+       | (colormap->colors[xx].green & 0xff00) << 8
+       | (colormap->colors[xx].blue  & 0xff00));
 #endif
     }
 
@@ -1244,9 +1244,9 @@ convert_real_slow (GdkImage    *image,
            case GDK_VISUAL_GRAYSCALE:
            case GDK_VISUAL_STATIC_COLOR:
            case GDK_VISUAL_PSEUDO_COLOR:
-             *o++ = cmap->colors[pixel].red;
-             *o++ = cmap->colors[pixel].green;
-             *o++ = cmap->colors[pixel].blue;
+             *o++ = cmap->colors[pixel].red   >> 8; 
+             *o++ = cmap->colors[pixel].green >> 8;
+             *o++ = cmap->colors[pixel].blue  >> 8;
              break;
            case GDK_VISUAL_TRUE_COLOR:
                                /* This is odd because it must sometimes shift left (otherwise
@@ -1267,9 +1267,9 @@ convert_real_slow (GdkImage    *image,
              *o++ = component;
              break;
            case GDK_VISUAL_DIRECT_COLOR:
-             *o++ = cmap->colors[((pixel & v->red_mask) << (32 - v->red_shift - v->red_prec)) >> 24].red;
-             *o++ = cmap->colors[((pixel & v->green_mask) << (32 - v->green_shift - v->green_prec)) >> 24].green;
-             *o++ = cmap->colors[((pixel & v->blue_mask) << (32 - v->blue_shift - v->blue_prec)) >> 24].blue;
+             *o++ = cmap->colors[((pixel & v->red_mask) << (32 - v->red_shift - v->red_prec)) >> 24].red >> 8;
+             *o++ = cmap->colors[((pixel & v->green_mask) << (32 - v->green_shift - v->green_prec)) >> 24].green >> 8;
+             *o++ = cmap->colors[((pixel & v->blue_mask) << (32 - v->blue_shift - v->blue_prec)) >> 24].blue >> 8;
              break;
            }
          if (alpha)