GtkSliceListModel — A list model that presents a slice out of a larger list
| GtkSliceListModel * | gtk_slice_list_model_new () |
| void | gtk_slice_list_model_set_model () |
| GListModel * | gtk_slice_list_model_get_model () |
| void | gtk_slice_list_model_set_offset () |
| guint | gtk_slice_list_model_get_offset () |
| void | gtk_slice_list_model_set_size () |
| guint | gtk_slice_list_model_get_size () |
GObject
╰── GtkSliceListModel
GtkSliceListModel implements GListModel.
#include <gtk/gtk.h>
GtkSliceListModel is a list model that takes a list model and presents a slice of that model.
This is useful when implementing paging by setting the size to the number of elements per page and updating the offset whenever a different page is opened.
GtkSliceListModel * gtk_slice_list_model_new (GListModel *model,guint offset,guint size);
Creates a new slice model that presents the slice from offset to offset + size our of the given model .
model | The model to use, or | [transfer full][allow-none] |
offset | the offset of the slice | |
size | maximum size of the slice |
A new GtkSliceListModel
void gtk_slice_list_model_set_model (GtkSliceListModel *self,GListModel *model);
Sets the model to show a slice of. The model's item type must conform to self 's item type.
self | ||
model | The model to be sliced. | [allow-none] |
GListModel *
gtk_slice_list_model_get_model (GtkSliceListModel *self); Gets the model that is currently being used or NULL if none.
self |
The model in use.
[nullable][transfer none]
void gtk_slice_list_model_set_offset (GtkSliceListModel *self,guint offset);
Sets the offset into the original model for this slice.
If the offset is too large for the sliced model, self will end up empty.
self | ||
offset | the new offset to use |
guint
gtk_slice_list_model_get_offset (GtkSliceListModel *self); Gets the offset set via gtk_slice_list_model_set_offset()
self |
The offset
void gtk_slice_list_model_set_size (GtkSliceListModel *self,guint size);
Sets the maximum size. self will never have more items than size .
It can however have fewer items if the offset is too large or the model sliced from doesn't have enough items.
self | ||
size | the maximum size |
guint
gtk_slice_list_model_get_size (GtkSliceListModel *self); Gets the size set via gtk_slice_list_model_set_size().
self |
The size
typedef struct _GtkSliceListModel GtkSliceListModel;
“model” property“model” GListModel *
Child model to take slice from
Owner: GtkSliceListModel
Flags: Read / Write
“offset” property“offset” guint
Offset of slice
Owner: GtkSliceListModel
Flags: Read / Write
Default value: 0
“size” property“size” guint
Maximum size of slice
Owner: GtkSliceListModel
Flags: Read / Write
Default value: 10
GListModel
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk4/4.0/GtkSliceListModel.html