接口
GtkSectionModel
since: 4.12
描述 [src]
interface Gtk.SectionModel : Gio.ListModel
GtkSectionModel
是一个接口,它为列表模型添加了对节的支持。
GtkSectionModel
将连续的项组合成所谓的节。然后,GtkListView
和 GtkGridView
等列表小组件通过安装头工厂,允许显示这些节的头。
许多 GTK 列表模型本身就支持节,或传递它们作为包装模型的节。
当模型的节分组发生更改时,模型将通过调用 gtk_section_model_sections_changed()
函数发出 GtkSectionModel::sections-changed
信号。然后需要再次查询给定范围内的所有节。 GListModel::items-changed
信号具有相同的效果,该范围内的所有节也会失效。
自以下版本可用:4.12
先决条件
为了实现 SectionModel,您的类型必须从GListModel
继承。
接口结构
struct GtkSectionModelInterface {
void (* get_section) (
GtkSectionModel* self,
guint position,
guint* out_start,
guint* out_end
);
}
GtkSectionModel
接口的虚拟函数列表。不一定要实现任何函数,但除非实现了 GtkSectionModel::get_section()
,整个模型将只是一个单一节。
接口成员
get_section |
|
返回包含给定位置的节。如果位置超出项数,则返回从 n_items 到 G_MAXUINT 的单一范围。 |