亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gdkcolor-win32.c

?? linux下電話本所依賴的一些圖形庫
?? C
?? 第 1 頁 / 共 3 頁
字號:
    }  else    {      pixels = g_new (gulong, ncolors);      /* Allocation of a writeable color cells */      status =  alloc_color_cells (colormap, FALSE, NULL, 0, pixels, ncolors);      if (status)	{	  for (i = 0; i < ncolors; i++)	    {	      colors[i].pixel = pixels[i];	      private->info[pixels[i]].ref_count++;	      private->info[pixels[i]].flags |= GDK_COLOR_WRITEABLE;	    }	}            g_free (pixels);      return status ? ncolors : 0;     }}static gintgdk_colormap_alloc_colors_private (GdkColormap *colormap,				   GdkColor    *colors,				   gint         ncolors,				   gboolean     writeable,				   gboolean     best_match,				   gboolean    *success){  GdkColormapPrivateWin32 *cmapp;  gint i, index;  PALETTEENTRY pe;  gint nremaining = 0;    cmapp = GDK_WIN32_COLORMAP_DATA (colormap);  index = -1;  /* First, store the colors we have room for */  index = 0;  for (i = 0; i < ncolors; i++)    {      if (!success[i])	{	  while ((index < colormap->size) &&		 (cmapp->info[index].ref_count != 0))	    index++;	  if (index < colormap->size)	    {	      if (index >= cmapp->current_size)		{		  if (!ResizePalette (cmapp->hpal, index + 1))		    {		      WIN32_GDI_FAILED ("ResizePalette");		      nremaining++;		    }		  else		    cmapp->current_size = index + 1;		}	      if (index < cmapp->current_size)		{		  pe.peRed = colors[i].red >> 8;		  pe.peBlue = colors[i].blue >> 8;		  pe.peGreen = colors[i].green >> 8;		  pe.peFlags = 0;		  		  if (!SetPaletteEntries (cmapp->hpal, index, 1, &pe))		    {		      WIN32_GDI_FAILED ("SetPaletteEntries");		      nremaining++;		    }		  else		    {		      success[i] = TRUE;		      colors[i].pixel = index;		      colormap->colors[index] = colors[i];		      cmapp->info[index].ref_count++;		    }		}	    }	  else	    nremaining++;	}    }    if (nremaining > 0 && best_match)    {      /* Get best matches for remaining colors */      gchar *available = g_new (gchar, colormap->size);      for (i = 0; i < colormap->size; i++)	available[i] = TRUE;      for (i=0; i<ncolors; i++)	{	  if (!success[i])	    {	      index = gdk_colormap_match_color (colormap, 						&colors[i], 						available);	      if (index != -1)		{		  colors[i] = colormap->colors[index];		  cmapp->info[index].ref_count++;		  success[i] = TRUE;		  nremaining--;		}	    }	}      g_free (available);    }  return (ncolors - nremaining);}static gintgdk_colormap_alloc_colors_shared (GdkColormap *colormap,				  GdkColor    *colors,				  gint         ncolors,				  gboolean     writeable,				  gboolean     best_match,				  gboolean    *success){  GdkColormapPrivateWin32 *private;  gint i, index;  gint nremaining = 0;  gint nfailed = 0;  private = GDK_WIN32_COLORMAP_DATA (colormap);  index = -1;  for (i = 0; i < ncolors; i++)    {      if (!success[i])	{	  if (gdk_colormap_alloc1 (colormap, &colors[i], &colors[i]))	    success[i] = TRUE;	  else	    nremaining++;	}    }  if (nremaining > 0 && best_match)    {      gchar *available = g_new (gchar, colormap->size);      for (i = 0; i < colormap->size; i++)	available[i] = ((private->info[i].ref_count == 0) ||			!(private->info[i].flags & GDK_COLOR_WRITEABLE));      while (nremaining > 0)	{	  for (i = 0; i < ncolors; i++)	    {	      if (!success[i])		{		  index = gdk_colormap_match_color (colormap, &colors[i], available);		  if (index != -1)		    {		      if (private->info[index].ref_count)			{			  private->info[index].ref_count++;			  colors[i] = colormap->colors[index];			  success[i] = TRUE;			  nremaining--;			}		      else			{			  if (gdk_colormap_alloc1 (colormap, 						   &colormap->colors[index],						   &colors[i]))			    {			      success[i] = TRUE;			      nremaining--;			      break;			    }			  else			    {			      available[index] = FALSE;			    }			}		    }		  else		    {		      nfailed++;		      nremaining--;		      success[i] = 2; /* flag as permanent failure */		    }		}	    }	}      g_free (available);    }  /* Change back the values we flagged as permanent failures */  if (nfailed > 0)    {      for (i = 0; i < ncolors; i++)	if (success[i] == 2)	  success[i] = FALSE;      nremaining = nfailed;    }    return (ncolors - nremaining);}static gintgdk_colormap_alloc_colors_pseudocolor (GdkColormap *colormap,				       GdkColor    *colors,				       gint         ncolors,				       gboolean     writeable,				       gboolean     best_match,				       gboolean    *success){  GdkColormapPrivateWin32 *private;  GdkColor *lookup_color;  gint i;  gint nremaining = 0;  private = GDK_WIN32_COLORMAP_DATA (colormap);  /* Check for an exact match among previously allocated colors */  for (i = 0; i < ncolors; i++)    {      if (!success[i])	{	  lookup_color = g_hash_table_lookup (private->hash, &colors[i]);	  if (lookup_color)	    {	      private->info[lookup_color->pixel].ref_count++;	      colors[i].pixel = lookup_color->pixel;	      success[i] = TRUE;	    }	  else	    nremaining++;	}    }  /* If that failed, we try to allocate a new color, or approxmiate   * with what we can get if best_match is TRUE.   */  if (nremaining > 0)    {      if (private->private_val)	return gdk_colormap_alloc_colors_private (colormap, colors, ncolors, writeable, best_match, success);      else	return gdk_colormap_alloc_colors_shared (colormap, colors, ncolors, writeable, best_match, success);    }  else    return 0;}gintgdk_colormap_alloc_colors (GdkColormap *colormap,			   GdkColor    *colors,			   gint         ncolors,			   gboolean     writeable,			   gboolean     best_match,			   gboolean    *success){  GdkColormapPrivateWin32 *private;  GdkVisual *visual;  gint i;  gint nremaining = 0;  PALETTEENTRY pe;  g_return_val_if_fail (GDK_IS_COLORMAP (colormap), FALSE);  g_return_val_if_fail (colors != NULL, FALSE);  private = GDK_WIN32_COLORMAP_DATA (colormap);  for (i = 0; i < ncolors; i++)    success[i] = FALSE;  switch (colormap->visual->type)    {    case GDK_VISUAL_PSEUDO_COLOR:    case GDK_VISUAL_GRAYSCALE:      if (writeable)	return gdk_colormap_alloc_colors_writeable (colormap, colors, ncolors,						    writeable, best_match, success);      else	return gdk_colormap_alloc_colors_pseudocolor (colormap, colors, ncolors,						    writeable, best_match, success);      break;    case GDK_VISUAL_TRUE_COLOR:      visual = colormap->visual;      for (i = 0; i < ncolors; i++)	{	  colors[i].pixel =	    (((colors[i].red >> (16 - visual->red_prec)) << visual->red_shift) +	     ((colors[i].green >> (16 - visual->green_prec)) << visual->green_shift) +	     ((colors[i].blue >> (16 - visual->blue_prec)) << visual->blue_shift));	  success[i] = TRUE;	}      break;    case GDK_VISUAL_STATIC_GRAY:    case GDK_VISUAL_STATIC_COLOR:      for (i = 0; i < ncolors; i++)	{	  pe.peRed = colors[i].red >> 8;	  pe.peGreen = colors[i].green >> 8;	  pe.peBlue = colors[i].blue >> 8;	  if (alloc_color (colormap, &pe, &colors[i].pixel))	    success[i] = TRUE;	  else	    nremaining++;	}      break;    case GDK_VISUAL_DIRECT_COLOR:      g_assert_not_reached ();    }  return nremaining;}voidgdk_colormap_query_color (GdkColormap *colormap,			  gulong       pixel,			  GdkColor    *result){  GdkVisual *visual;  g_return_if_fail (GDK_IS_COLORMAP (colormap));    visual = gdk_colormap_get_visual (colormap);  switch (visual->type)    {    case GDK_VISUAL_DIRECT_COLOR:    case GDK_VISUAL_TRUE_COLOR:      result->red = 65535. * (double)((pixel & visual->red_mask) >> visual->red_shift) / ((1 << visual->red_prec) - 1);      result->green = 65535. * (double)((pixel & visual->green_mask) >> visual->green_shift) / ((1 << visual->green_prec) - 1);      result->blue = 65535. * (double)((pixel & visual->blue_mask) >> visual->blue_shift) / ((1 << visual->blue_prec) - 1);      break;    case GDK_VISUAL_STATIC_GRAY:    case GDK_VISUAL_GRAYSCALE:      result->red = result->green = result->blue = 65535. * (double)pixel/((1<<visual->depth) - 1);      break;    case GDK_VISUAL_STATIC_COLOR:    case GDK_VISUAL_PSEUDO_COLOR:      result->red = colormap->colors[pixel].red;      result->green = colormap->colors[pixel].green;      result->blue = colormap->colors[pixel].blue;      break;    default:      g_assert_not_reached ();      break;    }}gbooleangdk_color_change (GdkColormap *colormap,		  GdkColor    *color){  GdkColormapPrivateWin32 *private;  PALETTEENTRY pe;  g_return_val_if_fail (GDK_IS_COLORMAP (colormap), FALSE);  g_return_val_if_fail (color != NULL, FALSE);  private = GDK_WIN32_COLORMAP_DATA (colormap);  if (color->pixel < 0 || color->pixel >= colormap->size)    return FALSE;  if (private->use[color->pixel] == GDK_WIN32_PE_STATIC)    return FALSE;  pe.peRed = color->red >> 8;  pe.peGreen = color->green >> 8;  pe.peBlue = color->blue >> 8;  if (SetPaletteEntries (private->hpal, color->pixel, 1, &pe) == 0)    WIN32_GDI_FAILED ("SetPaletteEntries");  return TRUE;}static gintgdk_colormap_match_color (GdkColormap *cmap,			  GdkColor    *color,			  const gchar *available){  GdkColor *colors;  guint sum, min;  gint rdiff, gdiff, bdiff;  gint i, index;  g_return_val_if_fail (cmap != NULL, 0);  g_return_val_if_fail (color != NULL, 0);  colors = cmap->colors;  min = 3 * (65536);  index = -1;  for (i = 0; i < cmap->size; i++)    {      if ((!available) || (available && available[i]))	{	  rdiff = (color->red - colors[i].red);	  gdiff = (color->green - colors[i].green);	  bdiff = (color->blue - colors[i].blue);	  sum = ABS (rdiff) + ABS (gdiff) + ABS (bdiff);	  if (sum < min)	    {	      index = i;	      min = sum;	    }	}    }  return index;}GdkScreen*gdk_colormap_get_screen (GdkColormap *cmap){  g_return_val_if_fail (cmap != NULL, NULL);  return gdk_screen_get_default ();}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲大片一区二区三区| 麻豆精品在线播放| 日本一区二区三级电影在线观看 | 国产三区在线成人av| 日韩一级成人av| 日韩一级黄色片| 日韩精品资源二区在线| 精品电影一区二区三区 | 国产成a人亚洲| 成人丝袜视频网| 91蜜桃免费观看视频| 色婷婷综合五月| 91麻豆精品国产91久久久久久 | 99久久久国产精品免费蜜臀| yourporn久久国产精品| 色先锋aa成人| 日韩一区二区三免费高清| 精品国产露脸精彩对白| 国产精品视频在线看| 一区二区三区精品| 久久av中文字幕片| 91视频精品在这里| 777奇米成人网| 久久精品一区蜜桃臀影院| 国产精品久久午夜夜伦鲁鲁| 一区二区在线观看视频| 日韩精品一级中文字幕精品视频免费观看 | 精品一区二区在线看| 一区二区三区小说| 欧美精品一区二区在线播放| 中文字幕一区二区三区不卡在线| 韩日av一区二区| 欧美α欧美αv大片| 日韩影院在线观看| 日韩视频在线观看一区二区| 蜜乳av一区二区三区| 精品少妇一区二区三区日产乱码 | 色综合中文字幕国产| 久久嫩草精品久久久久| 国产电影一区在线| 欧美—级在线免费片| 99久久99久久精品免费观看| 亚洲欧美日韩国产综合在线| 欧美综合色免费| 五月天精品一区二区三区| 91精品国产综合久久久蜜臀图片| 日本aⅴ免费视频一区二区三区| 欧美丰满少妇xxxbbb| 免费av网站大全久久| 久久久久久久久97黄色工厂| 顶级嫩模精品视频在线看| 亚洲婷婷国产精品电影人久久| 色伊人久久综合中文字幕| 亚洲在线成人精品| 欧美一区二区福利在线| 国产一区二区成人久久免费影院| 日本一区二区三区电影| 色吧成人激情小说| 美女视频网站黄色亚洲| 国产精品麻豆欧美日韩ww| 欧美在线视频全部完| 六月婷婷色综合| 国产精品人成在线观看免费| 欧美伊人久久久久久久久影院| 全国精品久久少妇| 国产亲近乱来精品视频| 欧美日韩精品是欧美日韩精品| 久久草av在线| 亚洲精品高清视频在线观看| 日韩免费观看2025年上映的电影| 国产69精品久久777的优势| 香蕉成人伊视频在线观看| 久久久国产精品麻豆| 欧美亚洲一区三区| 国产麻豆精品久久一二三| 亚洲国产精品久久久久婷婷884 | 日韩一卡二卡三卡四卡| 91免费在线视频观看| 首页国产欧美日韩丝袜| 亚洲日本成人在线观看| 久久一区二区视频| 欧美日韩中文国产| 94-欧美-setu| 国产精品一品二品| 日本亚洲电影天堂| 亚洲综合丁香婷婷六月香| 久久综合狠狠综合| 欧美色视频一区| 99免费精品在线| 国产精品77777竹菊影视小说| 亚洲国产视频直播| 成人免费视频在线观看| 久久久久国产免费免费| 欧美一区二区三级| 欧美性感一区二区三区| 成人天堂资源www在线| 狠狠色丁香婷婷综合| 青青草97国产精品免费观看无弹窗版 | 一区二区三区四区av| 中文字幕乱码一区二区免费| 欧美精品一区二区三区久久久| 欧美日韩国产欧美日美国产精品| 95精品视频在线| aaa亚洲精品| 成人一区二区三区中文字幕| 美女www一区二区| 天天综合网天天综合色| 亚洲福利视频导航| 亚洲风情在线资源站| 亚洲第一成人在线| 亚洲国产精品麻豆| 亚洲电影在线免费观看| 亚洲综合免费观看高清在线观看| 亚洲天堂免费看| 亚洲激情校园春色| 亚洲精品亚洲人成人网在线播放| 国产精品久久久久久久久动漫| 久久久99久久| 中文字幕第一区二区| 国产精品日韩成人| 最新热久久免费视频| 亚洲欧美区自拍先锋| 亚洲一区在线看| 丝袜美腿亚洲一区| 美国十次综合导航| 国产精品一级在线| 菠萝蜜视频在线观看一区| 成人免费视频免费观看| 99久久精品国产网站| 91国在线观看| 4438x成人网最大色成网站| 欧美一区二区美女| 久久嫩草精品久久久精品| 中文字幕成人av| 亚洲精品成人少妇| 性做久久久久久久免费看| 极品尤物av久久免费看| 国产不卡免费视频| 在线观看欧美日本| 日韩丝袜情趣美女图片| 欧美韩国日本综合| 亚洲一区二区三区激情| 蜜臀av一区二区| 成人性视频免费网站| 欧美亚洲一区二区三区四区| 精品国产一区二区亚洲人成毛片| 国产网红主播福利一区二区| 亚洲欧美日韩国产成人精品影院 | 91精品国产一区二区人妖| 久久综合久久99| 亚洲激情av在线| 免费成人av在线| 972aa.com艺术欧美| 欧美不卡一区二区| 亚洲精选视频在线| 国产在线乱码一区二区三区| 99视频精品全部免费在线| 91精品国产综合久久蜜臀| 国产精品人人做人人爽人人添| 午夜成人免费视频| 粗大黑人巨茎大战欧美成人| 在线精品视频免费播放| 久久色.com| 亚洲高清中文字幕| 成人免费毛片片v| 日韩视频不卡中文| 亚洲精品成人天堂一二三| 国产精品99久久不卡二区| 欧美色图免费看| 中文字幕一区二区三区四区不卡| 免费久久99精品国产| 91老师国产黑色丝袜在线| 久久五月婷婷丁香社区| 亚洲va韩国va欧美va| 99久久免费精品高清特色大片| 日韩免费视频线观看| 天天色天天操综合| 91国产免费看| 中文一区二区在线观看| 精品一区二区三区在线观看国产| 在线观看91视频| 日韩美女视频19| 成人中文字幕合集| 欧美精品一区二区三区高清aⅴ| 亚洲电影第三页| 欧亚一区二区三区| 亚洲精品久久7777| av亚洲精华国产精华精华| 26uuu精品一区二区在线观看| 蜜臀av一区二区| 日韩欧美电影一二三| 天天操天天干天天综合网| 欧美性色综合网| 一级女性全黄久久生活片免费| 97精品久久久久中文字幕| 国产日本欧洲亚洲| 国产成人99久久亚洲综合精品| 亚洲精品一区二区三区在线观看| 免费在线观看精品| 日韩美女主播在线视频一区二区三区|