All properties should be installed during the class initializer. It
is possible to install properties after that, but doing so is not
recommend, and specifically, is not guaranteed to be thread-safe vs.
use of properties on the same type on other threads.
The property id of each property is the index of each gobject.ParamSpec in
the pspecs array.
The property id of 0 is treated specially by GObject and it should not
be used to store a gobject.ParamSpec
This function should be used if you plan to use a static array of
gobject.ParamSpecs and g_object_notify_by_pspec(). For instance, this
class initialization:
Installs new properties from an array of gobject.ParamSpecs
All properties should be installed during the class initializer. It is possible to install properties after that, but doing so is not recommend, and specifically, is not guaranteed to be thread-safe vs. use of properties on the same type on other threads.
The property id of each property is the index of each gobject.ParamSpec in the pspecs array.
The property id of 0 is treated specially by GObject and it should not be used to store a gobject.ParamSpec
This function should be used if you plan to use a static array of gobject.ParamSpecs and g_object_notify_by_pspec(). For instance, this class initialization:
allows calling g_object_notify_by_pspec() to notify of property changes: