函数
GObjectsignal_newv
声明 [src]
guint
g_signal_newv (
const gchar* signal_name,
GType itype,
GSignalFlags signal_flags,
GClosure* class_closure,
GSignalAccumulator accumulator,
gpointer accu_data,
GSignalCMarshaller c_marshaller,
GType return_type,
guint n_params,
GType* param_types
)
描述 [src]
创建一个新的信号(这通常在类构造函数中完成)。
有关允许的信号名称的详细信息,请参见 g_signal_new()
。
如果 c_marshaller 为 NULL
,g_cclosure_marshal_generic()
将被用作此信号的封送器。
参数
signal_name
-
类型:
const gchar*
信号的名称。
数据由函数的调用者所有。 值是以 NUL 结尾的 UTF-8 字符串。 itype
-
类型:
GType
此信号所属的类型。它也属于从该类型派生的类型。
signal_flags
-
类型:
GSignalFlags
GSignalFlags
的组合,用于指定何时调用默认处理程序。您至少应该指定G_SIGNAL_RUN_FIRST
或G_SIGNAL_RUN_LAST
。 class_closure
-
类型:
GClosure
在发出信号时调用的闭包;可以为
NULL
。参数可以为 NULL
。数据由函数的调用者所有。 accumulator
-
此信号的累加器;可以为
NULL
。参数可以为 NULL
。 accu_data
-
类型:
gpointer
accumulator
的用户数据。参数可以为 NULL
。数据由函数的调用者所有。 c_marshaller
-
将参数值数组转换为信号发射为 C 语言回调函数调用的函数,或
NULL
。参数可以为 NULL
。 return_type
-
类型:
GType
返回值类型,或对没有返回值的信号的
G_TYPE_NONE
。 n_params
-
类型:
guint
param_types
的长度。 param_types
-
类型:
GType
数组一个类型数组,每个参数一个(如果
n_params
为 0,则可以为NULL
)。参数可以为 NULL
。数组长度在 n_params
参数中指定。数据由函数的调用者所有。