Fix the return value (return number of colors that failed), and handle

2008-02-13  Richard Hult  <richard@imendio.com>

	* gdk/quartz/gdkcolor-quartz.c: (gdk_colormap_alloc_colors): Fix
	the return value (return number of colors that failed), and handle
	RGBA colormap.
	(gdk_colormap_free_colors): Fix typo in comment.

svn path=/trunk/; revision=19557
This commit is contained in:
Richard Hult 2008-02-13 14:20:51 +00:00 committed by Richard Hult
parent ddf4aa8b3e
commit 8e66480c6c
2 changed files with 24 additions and 9 deletions

View File

@ -1,3 +1,10 @@
2008-02-13 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkcolor-quartz.c: (gdk_colormap_alloc_colors): Fix
the return value (return number of colors that failed), and handle
RGBA colormap.
(gdk_colormap_free_colors): Fix typo in comment.
2008-02-13 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreeview.c (gtk_tree_view_stop_rubber_band): only

View File

@ -137,9 +137,7 @@ gdk_colormap_free_colors (GdkColormap *colormap,
const GdkColor *colors,
gint n_colors)
{
/* This function shouldn't do anything since
* colors are neve allocated.
*/
/* This function shouldn't do anything since colors are never allocated. */
}
gint
@ -151,18 +149,28 @@ gdk_colormap_alloc_colors (GdkColormap *colormap,
gboolean *success)
{
int i;
int alpha;
g_return_val_if_fail (GDK_IS_COLORMAP (colormap), ncolors);
g_return_val_if_fail (colors != NULL, ncolors);
g_return_val_if_fail (success != NULL, ncolors);
if (gdk_colormap_get_visual (colormap)->depth == 32)
alpha = 0xff;
else
alpha = 0;
for (i = 0; i < ncolors; i++)
{
colors[i].pixel = ((colors[i].red >> 8) & 0xff) << 16 |
((colors[i].green >> 8) & 0xff) << 8 |
((colors[i].blue >> 8) & 0xff);
colors[i].pixel = alpha << 24 |
((colors[i].red >> 8) & 0xff) << 16 |
((colors[i].green >> 8) & 0xff) << 8 |
((colors[i].blue >> 8) & 0xff);
}
if (success)
*success = TRUE;
*success = TRUE;
return ncolors;
return 0;
}
void