GObjectInitiallyUnowned

描述 [src]

class GObject.InitiallyUnowned : GObject.Object
{
  /* No available fields */
}

具有初始浮动 引用的对象的类型。

GInitiallyUnowned 结构中的所有字段对于实现是私有的,并且永远不应直接访问 它们。

父类

实例方法

GObject (43) 继承的方法

请参阅 GObject 以获取方法的完整列表。

信号

GObject (1) 继承的信号
GObject::notify

当该对象的一个属性的值通过 g_object_set_property()、g_object_set() 等函数设置时,将发出 notify 信号。

类结构

struct GObjectInitiallyUnownedClass {
  GTypeClass g_type_class;
  GObject* (* constructor) (
    GType type,
    guint n_construct_properties,
    GObjectConstructParam* construct_properties
  );
  void (* set_property) (
    GObject* object,
    guint property_id,
    const GValue* value,
    GParamSpec* pspec
  );
  void (* get_property) (
    GObject* object,
    guint property_id,
    GValue* value,
    GParamSpec* pspec
  );
  void (* dispose) (
    GObject* object
  );
  void (* finalize) (
    GObject* object
  );
  void (* dispatch_properties_changed) (
    GObject* object,
    guint n_pspecs,
    GParamSpec** pspecs
  );
  void (* notify) (
    GObject* object,
    GParamSpec* pspec
  );
  void (* constructed) (
    GObject* object
  );
  
}

GInitiallyUnowned 类型的类结构。

类成员
g_type_class: GTypeClass

父 类。

constructor: GObject* (* constructor) ( GType type, guint n_construct_properties, GObjectConstructParam* construct_properties )

所有构造属性设置完成后,g_object_new () 调用 constructor 函数来完成对象初始化。constructor 实现要做第一件事是链接到父类的 constructor。很少需要覆盖 constructor,例如,处理构造属性或实现 单例模式。

set_property: void (* set_property) ( GObject* object, guint property_id, const GValue* value, GParamSpec* pspec )

此类型所有属性的通用设置器。应为所有具有属性的类型覆盖此属性。如果 set_property 的实现不显式发出属性更改通知,则类型系统会隐式完成此操作。但是,如果显式发出 notify 信号,类型系统不会再次发出 该信号。

get_property: void (* get_property) ( GObject* object, guint property_id, GValue* value, GParamSpec* pspec )

此类型所有属性的通用读取器。应该为所有具有 属性的类型覆盖此属性。

dispose: void (* dispose) ( GObject* object )

dispose 函数应该删除对其他对象的所有引用,但保持实例在其他方面保持不变,以便客户端方法调用仍然有效。它可以运行多次(由于引用循环)。返回之前,dispose 应该链接到父 类的 dispose 方法。

finalize: void (* finalize) ( GObject* object )

实例终止函数,应完成在 dispose 中开始的该实例的终止,并链接到父 类的 finalize 方法。

dispatch_properties_changed: void (* dispatch_properties_changed) ( GObject* object, guint n_pspecs, GParamSpec** pspecs )

对一堆属性发出属性更改通知。很少需要覆盖 dispatch_properties_changed

notify: void (* notify) ( GObject* object, GParamSpec* pspec )

notify 信号的类闭包。

constructed: void (* constructed) ( GObject* object )

constructed 函数由 g_object_new() 调用,作为对象创建过程的最后一步。在调用时,已经设置了对象上的所有构造属性。此调用的目的是为了允许只能在设置了构造属性后才能执行的对象初始化步骤。constructed 实现者应链接到其父类的 constructed 调用,使其能够完成其 初始化。