类
客观类型ParamSpecOverride
自从:2.4
描述 [src]
final class GObject.ParamSpecOverride : GObject.TypeInstance
{
/* No available fields */
}
一个从 客观类型.ParamSpec
派生的结构体,它将操作重定向到其他类型的 客观类型.ParamSpec
。
除了获取或设置值之外的所有操作都将被重定向,包括访问昵称和简短描述、验证值等。
请参阅 g_param_spec_get_redirect_target()
以检索覆盖的属性。在实现 g_object_class_override_property() 时使用了 GParamSpecOverride
,除非你正在实现一个类似于 客观类型
的新基类型,否则它将不会直接有用。
自从:2.4
实例方法
从 客观类型.ParamSpec 继承的方法(14个)
g_param_spec_get_blurb
获取 客观类型.ParamSpec
的简短描述。
g_param_spec_get_default_value
将 pspec
的默认值作为一个指向 客观类型.Value
的指针来获取。
自从:2.38
g_param_spec_get_name
获取 客观类型.ParamSpec
的名称。
g_param_spec_get_name_quark
获取名称的 GQuark。
自从:2.46
g_param_spec_get_nick
获取 客观类型.ParamSpec
的昵称。
g_param_spec_get_qdata
通过 g_param_spec_set_qdata() 存储的用户数据指针。
g_param_spec_get_redirect_target
如果paramspec将操作重定向到另一个paramspec,则返回该paramspec。重定向通常用于在派生类型中提供属性的新实现,同时保留父类型的所有属性。通过创建类型为 客观类型.ParamSpecOverride
的属性来建立重定向。请参阅 g_object_class_override_property()
中此能力的使用示例。
自从:2.4
g_param_spec_ref
增加 pspec
的引用计数。
g_param_spec_ref_sink
ref和sink 客观类型.ParamSpec
的便利函数。
自从:2.10
g_param_spec_set_qdata
在 客观类型.ParamSpec
上设置一个无类型、命名指针。名称通过 客观类型.GQuark
(例如,通过 g_quark_from_static_string() 获取)指定,指针可以通过g_param_spec_get_qdata() 从 pspec
获取。设置之前设置的用户数据指针会覆盖(释放)旧指针,使用 NULL
作为指针基本删除存储的数据。
g_param_spec_set_qdata_full
此函数与 g_param_spec_set_qdata() 类似,但在添加功能时,还可以指定一个 void (*destroy) (gpointer)
函数,当调用 pspec
时,或者当调用与相同 quark
的 g_param_spec_set_qdata()
时,这个函数将被随 data
一起调用。
g_param_spec_sink
新创建的 客观类型.ParamSpec
的初始引用计数为 1,即使尚未有人显式调用 g_param_spec_ref()
,也是如此。因此,初始引用计数被标记为“浮动”,直到有人连续调用代码 g_param_spec_ref (pspec); g_param_spec_sink (pspec);
,取得初始引用计数(因此得到 pspec
具有引用计数但仍不是“浮动”的)。
g_param_spec_steal_qdata
从 g_param_spec_set_qdata()
存储的用户数据指针中获取,并从 pspec
中删除 data
而不调用其 destroy()
函数(如果已设置)。通常,只需调用此函数来更新具有销毁通知的用户数据指针。
g_param_spec_unref
减少一个 pspec
的引用计数。