函数
GtkTreeIterCompareFunc
声明
int
(* GtkTreeIterCompareFunc) (
GtkTreeModel* model,
GtkTreeIter* a,
GtkTreeIter* b,
gpointer user_data
)
描述 [src]
如果 a
在 b
之前排序,a
与 b
一起排序,或者 a
在 b
之后排序,则 GtkTreeIterCompareFunc 应分别返回负整数、零或正整数。
如果两个迭代器被比较为相等,则它们在已排序模型中的顺序是未定义的。为了确保 GtkTreeSortable
按预期的方式工作,GtkTreeIterCompareFunc 必须定义模型上的偏序,即它必须是自反的、反对称的和传递性的。
例如,如果 model
是产品目录,则“价格”列的比较函数可以是返回 price_of(
a) - price_of(
b)
的函数。
参数
model
-
类型:
GtkTreeModel
比较所在处的
GtkTreeModel
。数据由函数的调用者所有。 a
-
类型:
GtkTreeIter
model
中的GtkTreeIter
。数据由函数的调用者所有。 b
-
类型:
GtkTreeIter
model
中的另一个GtkTreeIter
。数据由函数的调用者所有。 user_data
-
类型:
gpointer
分配比较函数时传递的数据,例如,通过 gtk_tree_sortable_set_sort_func()。
此参数可以为 NULL
。数据由函数的调用者所有。