• 大小: 23.56MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-08
  • 语言: 其他
  • 标签: gtk  

资源简介

gtk+-bundle_2.24.10-20120208_win32

资源截图

代码片段和文件信息

/* Gobject - GLib Type object Parameter and Signal Library
 * Copyright (C) 1998-1999 2000-2001 Tim Janik and Red Hat Inc.
 *
 * 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.
 */

#ifndef __G_object_NOTIFY_QUEUE_H__
#define __G_object_NOTIFY_QUEUE_H__

#include  /* memset */

#include ject.h>

G_BEGIN_DECLS


/* --- typedefs --- */
typedef struct _GobjectNotifyContext          GobjectNotifyContext;
typedef struct _GobjectNotifyQueue            GobjectNotifyQueue;
typedef void (*GobjectNotifyQueueDispatcher) (Gobject     *object
      guint        n_pspecs
      GParamSpec **pspecs);


/* --- structures --- */
struct _GobjectNotifyContext
{
  GQuark                       quark_notify_queue;
  GobjectNotifyQueueDispatcher dispatcher;
  GTrashStack                 *_nqueue_trash; /* unused */
};
struct _GobjectNotifyQueue
{
  GobjectNotifyContext *context;
  GSList               *pspecs;
  guint16               n_pspecs;
  guint16               freeze_count;
};

G_LOCK_DEFINE_STATIC(notify_lock);

/* --- functions --- */
static void
g_object_notify_queue_free (gpointer data)
{
  GobjectNotifyQueue *nqueue = data;

  g_slist_free (nqueue->pspecs);
  g_slice_free (GobjectNotifyQueue nqueue);
}

static inline GobjectNotifyQueue*
g_object_notify_queue_freeze (Gobject    *object
      GobjectNotifyContext *context)
{
  GobjectNotifyQueue *nqueue;

  G_LOCK(notify_lock);
  nqueue = g_datalist_id_get_data (&object->qdata context->quark_notify_queue);
  if (!nqueue)
    {
      nqueue = g_slice_new0 (GobjectNotifyQueue);
      nqueue->context = context;
      g_datalist_id_set_data_full (&object->qdata context->quark_notify_queue
   nqueue g_object_notify_queue_free);
    }

  if (nqueue->freeze_count >= 65535)
    g_critical(“Free queue for %s (%p) is larger than 65535“
               “ called g_object_freeze_notify() too often.“
               “ Forgot to call g_object_thaw_notify() or infinite loop“
               G_object_TYPE_NAME (object) object);
  else
    nqueue->freeze_count++;
  G_UNLOCK(notify_lock);

  return nqueue;
}

static inline void
g_object_notify_queue_thaw (Gobject            *object
    GobjectNotifyQueue *nqueue)
{
  GobjectNotifyContext *context = nqueue->context;
  GParamSpec *pspecs_mem[16] **pspecs 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       89051  2010-09-12 06:21  bin\envsubst.exe
     文件       38954  2010-02-05 20:55  bin\fc-cache.exe
     文件       31607  2010-02-05 20:55  bin\fc-cat.exe
     文件       29379  2010-02-05 20:55  bin\fc-list.exe
     文件        3818  2010-12-27 13:12  bin\freetype-config
     文件      538324  2010-12-27 13:12  bin\freetype6.dll
     文件       61058  2011-07-19 08:01  bin\gdbus.exe
     文件       29698  2011-11-21 12:13  bin\gdk-pixbuf-csource.exe
     文件       33941  2011-11-21 12:13  bin\gdk-pixbuf-query-loaders.exe
     文件       88497  2010-09-12 06:21  bin\gettext.exe
     文件        4655  2010-09-12 06:21  bin\gettext.sh
     文件       29129  2011-07-19 08:01  bin\gio-querymodules.exe
     文件       71490  2011-07-19 08:01  bin\glib-compile-schemas.exe
     文件       48328  2011-07-19 07:53  bin\glib-genmarshal.exe
     文件        5490  2011-07-19 07:38  bin\glib-gettextize
     文件       16906  2011-07-19 07:52  bin\glib-mkenums
     文件       27606  2011-07-19 07:53  bin\gobject-query.exe
     文件       30100  2011-07-19 07:42  bin\gspawn-win32-helper-console.exe
     文件       30678  2011-07-19 07:42  bin\gspawn-win32-helper.exe
     文件       29059  2012-02-08 20:34  bin\gtk-builder-convert
     文件      358028  2012-02-08 20:42  bin\gtk-demo.exe
     文件       32693  2012-02-08 20:35  bin\gtk-query-immodules-2.0.exe
     文件       58401  2012-02-08 20:35  bin\gtk-update-icon-cache.exe
     文件         583  2012-02-08 20:34  bin\gtk-update-icon-cache.exe.manifest
     文件      152489  2010-09-12 06:22  bin\intl.dll
     文件       90120  2010-09-12 06:21  bin\libasprintf-0.dll
     文件      163476  2011-07-18 18:25  bin\libatk-1.0-0.dll
     文件     1294335  2011-11-22 09:48  bin\libcairo-2.dll
     文件       44049  2011-11-22 09:49  bin\libcairo-gobject-2.dll
     文件      182789  2011-11-22 09:50  bin\libcairo-script-interpreter-2.dll
     文件      143096  2009-01-31 21:42  bin\libexpat-1.dll
............此处省略2936个文件信息

评论

共有 条评论