summaryrefslogtreecommitdiff
path: root/gdk/gdkpixbuf-drawable.c
diff options
context:
space:
mode:
authorSven Neumann <sven@gimp.org>2002-09-13 16:11:50 +0000
committerSven Neumann <neo@src.gnome.org>2002-09-13 16:11:50 +0000
commit9ceb330eb3bede57b91be25b93d68afd93199c7c (patch)
tree3f47fa6ddfc4f3ae5dec613bc896ce4692db74b6 /gdk/gdkpixbuf-drawable.c
parent549449d7ab4da98aed6268509364a4e9d32202ef (diff)
downloadgtk+-9ceb330eb3bede57b91be25b93d68afd93199c7c.tar.gz
use the most significant bits of the GdkColor components (#89703).
2002-09-13 Sven Neumann <sven@gimp.org> * gdk/gdkpixbuf-drawable.c: use the most significant bits of the GdkColor components (#89703).
Diffstat (limited to 'gdk/gdkpixbuf-drawable.c')
-rw-r--r--gdk/gdkpixbuf-drawable.c42
1 files changed, 21 insertions, 21 deletions
diff --git a/gdk/gdkpixbuf-drawable.c b/gdk/gdkpixbuf-drawable.c
index ec7d650a7a..042db48781 100644
--- a/gdk/gdkpixbuf-drawable.c
+++ b/gdk/gdkpixbuf-drawable.c
@@ -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)