GObjectParamSpecEnum

描述 [src]

final class GObject.ParamSpecEnum : GObject.TypeInstance
{
  enum_class: GEnumClass*,
  default_value: gint
}

包含枚举属性元数据的 GParamSpec 派生结构。

父类

实例方法

GParamSpec 继承的方法 (14)
g_param_spec_get_blurb

获取 GParamSpec 的简短描述。

g_param_spec_get_default_value

获取 pspec 的默认值(作为指向 GValue 的指针)。

自: 2.38

g_param_spec_get_name

获取 GParamSpec 的名称。

g_param_spec_get_name_quark

获取名称的 GQuark。

自: 2.46

g_param_spec_get_nick

获取 GParamSpec 的昵称。

g_param_spec_get_qdata

从存储有通过 g_param_spec_set_qdata() 存储的数据的用户数据指针。

g_param_spec_get_redirect_target

如果 paramspec 将操作重定向到另一个 paramspec,则返回该 paramspec。重定向通常用于在派生类型中提供属性的新实现,同时保留父类型中的所有属性。通过创建类型为 GParamSpecOverride 的属性来建立重定向。有关此功能用法的一个示例,请参见 g_object_class_override_property()

自: 2.4

g_param_spec_ref

增加 pspec 的引用计数。

g_param_spec_ref_sink

引用和缩减 GParamSpec 的便捷函数。

自: 2.10

g_param_spec_set_qdata

GParamSpec 上设置名称为不透明、命名的指针。通过 GQuark(例如,通过 g_quark_from_static_string() 检索)指定名称,并且可以使用 g_param_spec_get_qdata()pspec 获取指针。如果设置先前设置的用户数据指针,将覆盖(释放)该旧指针,使用 NULL 作为指针,这本质上将移除存储的数据。

g_param_spec_set_qdata_full

此函数的工作方式与 g_param_spec_set_qdata() 类似,但此外,还可以指定在 pspec 被清除时或数据被具有相同的 quarkg_param_spec_set_qdata() 调用覆盖时,以 data 作为参数调用的 void (*destroy) (gpointer) 函数。

g_param_spec_sink

即使没有人明确调用它 g_param_spec_ref(),新创建的 GParamSpec 的初始引用计数也是 1。因此,标记初始引用计数为“浮动”,直到有人依次对它调用 g_param_spec_ref (pspec); g_param_spec_sink (pspec); 来接管初始引用计数(从而最终得到一个引用计数为 1 但不再标记为“浮动”的 pspec)。

g_param_spec_steal_qdata

从存储有 g_param_spec_set_qdata() 存储的数据的用户数据指针,并从 pspec 中移除 data,而不调用它的 destory() 函数(如果有的话)。通常,仅在使用销毁通知函数更新用户数据指针时才需要调用此函数。

g_param_spec_unref

减少 pspec 的引用计数。