File indexing completed on 2025-01-18 09:59:58
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025 #ifndef __G_LIST_MODEL_H__
0026 #define __G_LIST_MODEL_H__
0027
0028 #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION)
0029 #error "Only <gio/gio.h> can be included directly."
0030 #endif
0031
0032 #include <gio/giotypes.h>
0033
0034 G_BEGIN_DECLS
0035
0036 #define G_TYPE_LIST_MODEL g_list_model_get_type ()
0037 GIO_AVAILABLE_IN_2_44
0038 G_DECLARE_INTERFACE(GListModel, g_list_model, G, LIST_MODEL, GObject)
0039
0040 struct _GListModelInterface
0041 {
0042 GTypeInterface g_iface;
0043
0044 GType (* get_item_type) (GListModel *list);
0045
0046 guint (* get_n_items) (GListModel *list);
0047
0048 gpointer (* get_item) (GListModel *list,
0049 guint position);
0050 };
0051
0052 GIO_AVAILABLE_IN_2_44
0053 GType g_list_model_get_item_type (GListModel *list);
0054
0055 GIO_AVAILABLE_IN_2_44
0056 guint g_list_model_get_n_items (GListModel *list);
0057
0058 GIO_AVAILABLE_IN_2_44
0059 gpointer g_list_model_get_item (GListModel *list,
0060 guint position);
0061
0062 GIO_AVAILABLE_IN_2_44
0063 GObject * g_list_model_get_object (GListModel *list,
0064 guint position);
0065
0066 GIO_AVAILABLE_IN_2_44
0067 void g_list_model_items_changed (GListModel *list,
0068 guint position,
0069 guint removed,
0070 guint added);
0071
0072 G_END_DECLS
0073
0074 #endif