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