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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? gdkproperty-fb.c

?? linux下電話本所依賴的一些圖形庫
?? C
字號:
/* GDK - The GIMP Drawing Kit * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. *//* * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS * file for a list of people on the GTK+ Team.  See the ChangeLog * files for a list of changes.  These files are distributed with * GTK+ at ftp://ftp.gtk.org/pub/gtk/.  */#include <config.h>#include <string.h>#include <time.h>#include "gdkfb.h"#include "gdkproperty.h"#include "gdkprivate.h"#include "gdkprivate-fb.h"GdkAtomgdk_atom_intern (const gchar *atom_name,		 gboolean     only_if_exists){  g_return_val_if_fail (atom_name != NULL, GDK_NONE);  if (strcmp (atom_name, "PRIMARY") == 0)    return GDK_SELECTION_PRIMARY;  else if (strcmp (atom_name, "SECONDARY") == 0)    return GDK_SELECTION_SECONDARY;  else if (strcmp (atom_name, "CLIPBOARD") == 0)    return GDK_SELECTION_CLIPBOARD;  else if (strcmp (atom_name, "ATOM") == 0)    return GDK_SELECTION_TYPE_ATOM;  else if (strcmp (atom_name, "BITMAP") == 0)    return GDK_SELECTION_TYPE_BITMAP;  else if (strcmp (atom_name, "COLORMAP") == 0)    return GDK_SELECTION_TYPE_COLORMAP;  else if (strcmp (atom_name, "DRAWABLE") == 0)    return GDK_SELECTION_TYPE_DRAWABLE;  else if (strcmp (atom_name, "INTEGER") == 0)    return GDK_SELECTION_TYPE_INTEGER;  else if (strcmp (atom_name, "PIXMAP") == 0)    return GDK_SELECTION_TYPE_PIXMAP;  else if (strcmp (atom_name, "WINDOW") == 0)    return GDK_SELECTION_TYPE_WINDOW;  else if (strcmp (atom_name, "STRING") == 0)    return GDK_SELECTION_TYPE_STRING;  else    return GUINT_TO_POINTER (256 + g_quark_from_string (atom_name));}gchar*gdk_atom_name (GdkAtom atom){  if (GPOINTER_TO_UINT (atom) < 256)    {            switch (GPOINTER_TO_UINT (atom))	{	case GPOINTER_TO_UINT (GDK_SELECTION_PRIMARY):	  return g_strdup ("PRIMARY");	case GPOINTER_TO_UINT (GDK_SELECTION_SECONDARY):	  return g_strdup ("SECONDARY");	case GPOINTER_TO_UINT (GDK_SELECTION_CLIPBOARD):	  return g_strdup ("CLIPBOARD");	case GPOINTER_TO_UINT (GDK_SELECTION_TYPE_ATOM):	  return g_strdup ("ATOM");	case GPOINTER_TO_UINT (GDK_SELECTION_TYPE_BITMAP):	  return g_strdup ("BITMAP");	case GPOINTER_TO_UINT (GDK_SELECTION_TYPE_COLORMAP):	  return g_strdup ("COLORMAP");	case GPOINTER_TO_UINT (GDK_SELECTION_TYPE_DRAWABLE):	  return g_strdup ("DRAWABLE");	case GPOINTER_TO_UINT (GDK_SELECTION_TYPE_INTEGER):	  return g_strdup ("INTEGER");	case GPOINTER_TO_UINT (GDK_SELECTION_TYPE_PIXMAP):	  return g_strdup ("PIXMAP");	case GPOINTER_TO_UINT (GDK_SELECTION_TYPE_WINDOW):	  return g_strdup ("WINDOW");	case GPOINTER_TO_UINT (GDK_SELECTION_TYPE_STRING):	  return g_strdup ("STRING");	default:	  g_warning (G_STRLOC "Invalid atom");	  return g_strdup ("<invalid>");	}    }  else    return g_strdup (g_quark_to_string (GPOINTER_TO_UINT (atom) - 256));}static voidgdk_property_delete_2 (GdkWindow *window,		       GdkAtom property,		       GdkWindowProperty *prop){  GdkWindowFBData *fbd = GDK_WINDOW_IMPL_FBDATA(window);  GdkEvent *event;  GdkWindow *event_window;    g_hash_table_remove (fbd->properties, GUINT_TO_POINTER (property));  g_free (prop);  event_window = gdk_fb_other_event_window (window, GDK_PROPERTY_NOTIFY);  if (event_window)    {      event = gdk_event_make (event_window, GDK_PROPERTY_NOTIFY, TRUE);      event->property.atom = property;      event->property.state = GDK_PROPERTY_DELETE;    }}voidgdk_property_delete (GdkWindow *window,		     GdkAtom    property){  GdkWindowFBData *fbd = GDK_WINDOW_FBDATA (window);  GdkWindowProperty *prop;  g_return_if_fail (window != NULL);  g_return_if_fail (GDK_IS_WINDOW (window));  if (!fbd->properties)    return;  prop = g_hash_table_lookup (fbd->properties, GUINT_TO_POINTER(property));  if (!prop)    return;  gdk_property_delete_2 (window, property, prop);}gintgdk_property_get (GdkWindow   *window,		  GdkAtom      property,		  GdkAtom      type,		  gulong       offset,		  gulong       length,		  gint         pdelete,		  GdkAtom     *actual_property_type,		  gint        *actual_format_type,		  gint        *actual_length,		  guchar     **data){  GdkWindowFBData *fbd = GDK_WINDOW_FBDATA (window);  GdkWindowProperty *prop;  int nbytes;  g_return_val_if_fail (window != NULL, FALSE);  g_return_val_if_fail (data != NULL, FALSE);  g_return_val_if_fail (actual_length != NULL, FALSE);  g_return_val_if_fail (GDK_IS_WINDOW (window), FALSE);  if (!fbd->properties)    return FALSE;  prop = g_hash_table_lookup (fbd->properties, GUINT_TO_POINTER (property));  if (!prop)    return FALSE;  nbytes = (offset + length * (prop->format >> 3)) - prop->length;  nbytes = MAX (nbytes, 0);  if (nbytes > 0)    {      *data = g_malloc (nbytes+1);      memcpy (*data, prop->data + offset, nbytes);      (*data)[nbytes] = 0;    }  else    *data = NULL;  *actual_length = nbytes / (prop->format >> 3);  *actual_property_type = prop->type;  *actual_format_type = prop->format;  if (pdelete)    gdk_property_delete_2 (window, property, prop);  return TRUE;}voidgdk_property_change (GdkWindow   *window,		     GdkAtom      property,		     GdkAtom      type,		     gint         format,		     GdkPropMode  mode,		     const guchar *data,		     gint         nelements){  GdkWindowFBData *fbd = GDK_WINDOW_FBDATA (window);  GdkWindowProperty *prop, *new_prop;  int new_size = 0;  GdkEvent *event;  GdkWindow *event_window;  g_return_if_fail (window != NULL);  g_return_if_fail (GDK_IS_WINDOW (window));  if (!fbd->properties)    fbd->properties = g_hash_table_new (NULL, NULL);  prop = g_hash_table_lookup (fbd->properties, GUINT_TO_POINTER (property));  switch(mode)    {    case GDK_PROP_MODE_REPLACE:      new_size = nelements * (format >> 3);      break;    case GDK_PROP_MODE_PREPEND:    case GDK_PROP_MODE_APPEND:      new_size = nelements * (format >> 3);      if (prop)	new_size += prop->length;    default:      break;    }  new_prop = g_malloc (G_STRUCT_OFFSET (GdkWindowProperty, data) + new_size);  new_prop->length = new_size;  new_prop->type = type;  new_prop->format = format;  switch (mode)    {    case GDK_PROP_MODE_REPLACE:      memcpy (new_prop->data, data, new_size);      break;    case GDK_PROP_MODE_APPEND:      if (prop)	memcpy (new_prop->data, prop->data, prop->length);      memcpy (new_prop->data + prop->length, data, (nelements * (format >> 3)));      break;    case GDK_PROP_MODE_PREPEND:      memcpy (new_prop->data, data, (nelements * (format >> 3)));      if (prop)	memcpy (new_prop->data + (nelements * (format >> 3)), prop->data, prop->length);      break;    }  g_hash_table_insert (fbd->properties, GUINT_TO_POINTER (property), new_prop);  g_free (prop);  event_window = gdk_fb_other_event_window (window, GDK_PROPERTY_NOTIFY);  if (event_window)    {      event = gdk_event_make (event_window, GDK_PROPERTY_NOTIFY, TRUE);      event->property.atom = property;      event->property.state = GDK_PROPERTY_NEW_VALUE;    }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91一区二区三区在线观看| 欧美在线观看视频一区二区三区| 亚洲精品免费在线| 国产亚洲短视频| 欧美性生活久久| 成人激情免费视频| 六月丁香综合在线视频| 亚洲国产欧美一区二区三区丁香婷| 久久久久97国产精华液好用吗| 欧美情侣在线播放| 99国产精品视频免费观看| 精品一区二区三区在线播放| 亚洲一级不卡视频| 亚洲少妇中出一区| 欧美激情中文不卡| 26uuu国产一区二区三区| 欧美巨大另类极品videosbest| 99精品视频在线播放观看| 国产九色精品成人porny| 青青草成人在线观看| 亚洲国产精品天堂| 亚洲激情中文1区| 一区在线观看免费| 欧美国产成人在线| 国产欧美一区二区三区在线老狼| 欧美v日韩v国产v| 欧美一级黄色片| 欧美日韩的一区二区| 欧美日韩一区二区不卡| 在线观看视频91| 欧日韩精品视频| 欧美三级电影在线看| 欧美三级电影在线观看| 欧美日韩夫妻久久| 欧美挠脚心视频网站| 7777精品伊人久久久大香线蕉| 欧美日韩国产123区| 91.麻豆视频| 欧美一级精品在线| 欧美成人精品3d动漫h| 26uuu欧美日本| 国产亚洲午夜高清国产拍精品| 久久精品在线观看| 国产日韩欧美在线一区| 欧美国产一区二区在线观看| 国产精品欧美久久久久一区二区| 136国产福利精品导航| 洋洋成人永久网站入口| 亚洲一二三级电影| 日本成人在线电影网| 国内欧美视频一区二区| 高清不卡一区二区在线| 99久久精品免费看| 欧美在线不卡视频| 欧美一区二区精品在线| 精品国产网站在线观看| 久久精品欧美日韩精品| 国产精品久久久久久久久免费相片| 国产精品久久久久久久久久免费看| 国产精品高潮呻吟久久| 亚洲成人一区二区在线观看| 日本欧美久久久久免费播放网| 激情五月激情综合网| 成人网在线播放| 欧美影院精品一区| 欧美成人艳星乳罩| 专区另类欧美日韩| 日本在线不卡视频| 懂色av一区二区夜夜嗨| 欧美性受xxxx黑人xyx性爽| 日韩网站在线看片你懂的| 欧美国产欧美亚州国产日韩mv天天看完整| 国产精品盗摄一区二区三区| 午夜精品久久久久久久99樱桃| 国产福利精品一区二区| 欧美日韩免费观看一区三区| 精品久久久久久久久久久久久久久| 亚洲天天做日日做天天谢日日欢 | 国产福利一区在线| 色婷婷久久99综合精品jk白丝 | 久久综合国产精品| 亚洲男人天堂av| 寂寞少妇一区二区三区| www..com久久爱| 欧美一级一区二区| 亚洲欧美国产高清| 久久99在线观看| 色婷婷激情久久| 国产日韩欧美在线一区| 视频一区二区三区中文字幕| 成人av免费在线| 精品久久一区二区| 一区av在线播放| 波多野结衣欧美| 日韩欧美国产一区在线观看| 一区二区高清免费观看影视大全 | 中文字幕中文字幕在线一区| 麻豆精品精品国产自在97香蕉| 色综合久久综合网97色综合| 久久精品视频免费| 蜜桃传媒麻豆第一区在线观看| 色视频成人在线观看免| 国产精品青草久久| 狠狠色综合日日| 欧美一级欧美三级| 亚洲精品乱码久久久久久黑人| 国产高清亚洲一区| 日韩一级精品视频在线观看| 亚洲成人免费在线观看| av在线不卡电影| 国产欧美日韩久久| 韩国av一区二区| 日韩欧美一区电影| 热久久国产精品| 91精品国产综合久久香蕉的特点| 亚洲精品成人少妇| 色综合久久中文综合久久牛| 国产精品你懂的在线| 粉嫩一区二区三区性色av| 精品对白一区国产伦| 琪琪一区二区三区| 5月丁香婷婷综合| 日日欢夜夜爽一区| 欧美日韩不卡一区二区| 亚洲午夜私人影院| 欧美性videosxxxxx| 亚洲一区二区三区四区不卡| 欧美中文字幕久久| 亚洲一区在线观看网站| 欧美私人免费视频| 亚洲香蕉伊在人在线观| 欧美日韩综合在线| 性做久久久久久久久| 欧美日韩性生活| 日韩专区中文字幕一区二区| 91精品国产免费| 欧美aaaaaa午夜精品| 欧美大胆一级视频| 国产一区久久久| 欧美经典三级视频一区二区三区| 高清在线观看日韩| 亚洲欧洲综合另类在线| 欧美午夜理伦三级在线观看| 婷婷中文字幕综合| 精品日韩一区二区三区免费视频| 久久不见久久见免费视频1| 久久综合av免费| 不卡的av中国片| 亚洲国产日韩综合久久精品| 欧美一区二区在线观看| 国模无码大尺度一区二区三区| 国产亚洲综合在线| 色婷婷av一区二区三区之一色屋| 艳妇臀荡乳欲伦亚洲一区| 91精品一区二区三区在线观看| 国产制服丝袜一区| 国产精品国产三级国产普通话蜜臀 | 日韩三级中文字幕| 精品一区二区影视| 欧美极品少妇xxxxⅹ高跟鞋| 在线视频中文字幕一区二区| 日韩av一区二| 中文无字幕一区二区三区| 91福利在线看| 久久99国产精品久久99果冻传媒| 国产精品日韩精品欧美在线| 欧美日韩在线播放三区四区| 久久99精品一区二区三区 | 国产亚洲综合性久久久影院| 91麻豆视频网站| 久热成人在线视频| 国产精品国产三级国产a| 精品视频在线视频| 国产69精品一区二区亚洲孕妇 | 亚洲成人精品一区| 久久久久久久一区| 欧洲另类一二三四区| 麻豆久久久久久| 综合激情网...| 日韩免费性生活视频播放| thepron国产精品| 免费黄网站欧美| 日韩久久一区二区| 精品欧美一区二区久久| 色国产精品一区在线观看| 国产一区999| 国产毛片精品一区| 亚洲欧洲日产国码二区| 精品久久久网站| 欧美伊人久久久久久午夜久久久久| 国产精品影视网| 婷婷成人综合网| 国产精品福利影院| 精品国产乱码久久久久久1区2区| 色综合久久天天| 丰满亚洲少妇av| 国产一区二区三区四区在线观看| 亚洲一区二区三区四区在线免费观看 | 欧美制服丝袜第一页| 国产激情91久久精品导航|