X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkliststore.h;h=1e61d5aba4b613db723be8f5e9434e0bbd42e4df;hb=32aa7f0582febb614c41e4130ad34ac44ef6efd2;hp=f78000f6800b157cb566e10c7afdf1b920ef0f97;hpb=ee5ff7ddc23a90018b35102ac87e6ac41928da10;p=~andy%2Fgtk diff --git a/gtk/gtkliststore.h b/gtk/gtkliststore.h index f78000f68..1e61d5aba 100644 --- a/gtk/gtkliststore.h +++ b/gtk/gtkliststore.h @@ -12,87 +12,122 @@ * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * License along with this library. If not, see . */ #ifndef __GTK_LIST_STORE_H__ #define __GTK_LIST_STORE_H__ +#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only can be included directly." +#endif + #include #include -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ + +G_BEGIN_DECLS + #define GTK_TYPE_LIST_STORE (gtk_list_store_get_type ()) -#define GTK_LIST_STORE(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_LIST_STORE, GtkListStore)) -#define GTK_LIST_STORE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_LISTSTORE, GtkListStoreClass)) -#define GTK_IS_LIST_STORE(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_LIST_STORE)) -#define GTK_IS_LIST_STORE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), GTK_TYPE_LIST_STORE)) -#define GTK_LIST_STORE_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), GTK_TYPE_LIST_STORE, GtkListStoreClass)) +#define GTK_LIST_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_LIST_STORE, GtkListStore)) +#define GTK_LIST_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_LIST_STORE, GtkListStoreClass)) +#define GTK_IS_LIST_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_LIST_STORE)) +#define GTK_IS_LIST_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_LIST_STORE)) +#define GTK_LIST_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_LIST_STORE, GtkListStoreClass)) -typedef struct _GtkListStore GtkListStore; -typedef struct _GtkListStoreClass GtkListStoreClass; +typedef struct _GtkListStore GtkListStore; +typedef struct _GtkListStorePrivate GtkListStorePrivate; +typedef struct _GtkListStoreClass GtkListStoreClass; struct _GtkListStore { GObject parent; /*< private >*/ - gint stamp; - gpointer root; - gpointer tail; - GList *sort_list; - gint n_columns; - gint sort_column_id; - GtkTreeSortOrder order; - GType *column_headers; - gint length; + GtkListStorePrivate *priv; }; struct _GtkListStoreClass { GObjectClass parent_class; + + /* Padding for future expansion */ + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); }; -GtkType gtk_list_store_get_type (void); -GtkListStore *gtk_list_store_new (gint n_columns, - ...); -void gtk_list_store_set_value (GtkListStore *store, - GtkTreeIter *iter, - gint column, - GValue *value); -void gtk_list_store_set (GtkListStore *list_store, - GtkTreeIter *iter, - ...); -void gtk_list_store_set_valist (GtkListStore *list_store, - GtkTreeIter *iter, - va_list var_args); -void gtk_list_store_remove (GtkListStore *store, - GtkTreeIter *iter); -void gtk_list_store_insert (GtkListStore *store, - GtkTreeIter *iter, - gint position); -void gtk_list_store_insert_before (GtkListStore *store, - GtkTreeIter *iter, - GtkTreeIter *sibling); -void gtk_list_store_insert_after (GtkListStore *store, - GtkTreeIter *iter, - GtkTreeIter *sibling); -void gtk_list_store_prepend (GtkListStore *store, - GtkTreeIter *iter); -void gtk_list_store_append (GtkListStore *store, - GtkTreeIter *iter); -void gtk_list_store_clear (GtkListStore *store); - - -#ifdef __cplusplus -} -#endif /* __cplusplus */ +GType gtk_list_store_get_type (void) G_GNUC_CONST; +GtkListStore *gtk_list_store_new (gint n_columns, + ...); +GtkListStore *gtk_list_store_newv (gint n_columns, + GType *types); +void gtk_list_store_set_column_types (GtkListStore *list_store, + gint n_columns, + GType *types); + +/* NOTE: use gtk_tree_model_get to get values from a GtkListStore */ + +void gtk_list_store_set_value (GtkListStore *list_store, + GtkTreeIter *iter, + gint column, + GValue *value); +void gtk_list_store_set (GtkListStore *list_store, + GtkTreeIter *iter, + ...); +void gtk_list_store_set_valuesv (GtkListStore *list_store, + GtkTreeIter *iter, + gint *columns, + GValue *values, + gint n_values); +void gtk_list_store_set_valist (GtkListStore *list_store, + GtkTreeIter *iter, + va_list var_args); +gboolean gtk_list_store_remove (GtkListStore *list_store, + GtkTreeIter *iter); +void gtk_list_store_insert (GtkListStore *list_store, + GtkTreeIter *iter, + gint position); +void gtk_list_store_insert_before (GtkListStore *list_store, + GtkTreeIter *iter, + GtkTreeIter *sibling); +void gtk_list_store_insert_after (GtkListStore *list_store, + GtkTreeIter *iter, + GtkTreeIter *sibling); +void gtk_list_store_insert_with_values (GtkListStore *list_store, + GtkTreeIter *iter, + gint position, + ...); +void gtk_list_store_insert_with_valuesv (GtkListStore *list_store, + GtkTreeIter *iter, + gint position, + gint *columns, + GValue *values, + gint n_values); +void gtk_list_store_prepend (GtkListStore *list_store, + GtkTreeIter *iter); +void gtk_list_store_append (GtkListStore *list_store, + GtkTreeIter *iter); +void gtk_list_store_clear (GtkListStore *list_store); +gboolean gtk_list_store_iter_is_valid (GtkListStore *list_store, + GtkTreeIter *iter); +void gtk_list_store_reorder (GtkListStore *store, + gint *new_order); +void gtk_list_store_swap (GtkListStore *store, + GtkTreeIter *a, + GtkTreeIter *b); +void gtk_list_store_move_after (GtkListStore *store, + GtkTreeIter *iter, + GtkTreeIter *position); +void gtk_list_store_move_before (GtkListStore *store, + GtkTreeIter *iter, + GtkTreeIter *position); + + +G_END_DECLS #endif /* __GTK_LIST_STORE_H__ */