GObjectParamSpecFlags

描述 [源]

final class GObject.ParamSpecFlags : GObject.TypeInstance
{
  flags_class: GFlagsClass*,
  default_value: guint
}

一个派生于 GParamSpec 的结构,包含标志属性的元数据。

祖先

实例方法

GParamSpec 继承的方法(14)
g_param_spec_get_blurb

获取 GParamSpec 的简短描述。

g_param_spec_get_default_value

获取 pspec 的默认值,以指向 GValue 的指针。

since: 2.38

g_param_spec_get_name

获取 GParamSpec 的名称。

g_param_spec_get_name_quark

获取名称的 GQuark。

since: 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()

since: 2.4

g_param_spec_ref

增加 pspec 的引用计数。

g_param_spec_ref_sink

方便函数,用于引用和吸收一个 GParamSpec

since: 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() 类似,但还可以指定一个 void (*destroy) (gpointer) 函数,该函数在最终化 pspec 或数据通过包含相同 quark 的调用 g_param_spec_set_qdata() 被覆盖时,以 data 作为参数调用。

g_param_spec_sink

新创建的 GParamSpec 的初始引用计数为 1,尽管还没有人明确调用 g_param_spec_ref() 来操作它。因此,初始引用计数被标记为“浮动”,直到有人按顺序调用 g_param_spec_ref (pspec); g_param_spec_sink (pspec);它接管初始引用计数(从而最终得到一个引用计数仍然为 1 的 pspec,但不再标记为“浮动”)。

g_param_spec_steal_qdata

通过 g_param_spec_set_qdata() 存储的用户数据指针,但不调用其 destroy() 函数(如果已设置)。通常,只需调用此函数来更新具有destroy通知的用户数据指针。

g_param_spec_unref

减少 pspec 的引用计数。