X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtktreestore.h;h=69a42bee1bf74dcf2e41b6a1724d82b7cebf3cfe;hb=9f41970832b60f3cf6644dfbd154df7ec24f26ce;hp=4b517f21e36a43f82f41bc9e9af4545ac67a1786;hpb=43d4639743bb280268c4bbdd973cbac6ceab6ce4;p=~andy%2Fgtk diff --git a/gtk/gtktreestore.h b/gtk/gtktreestore.h index 4b517f21e..69a42bee1 100644 --- a/gtk/gtktreestore.h +++ b/gtk/gtktreestore.h @@ -12,57 +12,56 @@ * 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_TREE_STORE_H__ #define __GTK_TREE_STORE_H__ +#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only can be included directly." +#endif + +#include #include #include #include -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ + +G_BEGIN_DECLS + #define GTK_TYPE_TREE_STORE (gtk_tree_store_get_type ()) -#define GTK_TREE_STORE(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_TREE_STORE, GtkTreeStore)) -#define GTK_TREE_STORE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_TREE_STORE, GtkTreeStoreClass)) -#define GTK_IS_TREE_STORE(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_TREE_STORE)) -#define GTK_IS_TREE_STORE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), GTK_TYPE_TREE_STORE)) -#define GTK_TREE_STORE_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), GTK_TYPE_TREE_STORE, GtkTreeStoreClass)) +#define GTK_TREE_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_TREE_STORE, GtkTreeStore)) +#define GTK_TREE_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_TREE_STORE, GtkTreeStoreClass)) +#define GTK_IS_TREE_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_TREE_STORE)) +#define GTK_IS_TREE_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_TREE_STORE)) +#define GTK_TREE_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_TREE_STORE, GtkTreeStoreClass)) -typedef struct _GtkTreeStore GtkTreeStore; -typedef struct _GtkTreeStoreClass GtkTreeStoreClass; +typedef struct _GtkTreeStore GtkTreeStore; +typedef struct _GtkTreeStoreClass GtkTreeStoreClass; +typedef struct _GtkTreeStorePrivate GtkTreeStorePrivate; struct _GtkTreeStore { GObject parent; - gint stamp; - gpointer root; - gpointer last; - gint n_columns; - gint sort_column_id; - GList *sort_list; - GtkSortType order; - GType *column_headers; - GtkTreeIterCompareFunc default_sort_func; - gpointer default_sort_data; - GtkDestroyNotify default_sort_destroy; - guint columns_dirty : 1; + GtkTreeStorePrivate *priv; }; struct _GtkTreeStoreClass { 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_tree_store_get_type (void); +GType gtk_tree_store_get_type (void) G_GNUC_CONST; GtkTreeStore *gtk_tree_store_new (gint n_columns, ...); GtkTreeStore *gtk_tree_store_newv (gint n_columns, @@ -70,6 +69,9 @@ GtkTreeStore *gtk_tree_store_newv (gint n_columns, void gtk_tree_store_set_column_types (GtkTreeStore *tree_store, gint n_columns, GType *types); + +/* NOTE: use gtk_tree_model_get to get values from a GtkTreeStore */ + void gtk_tree_store_set_value (GtkTreeStore *tree_store, GtkTreeIter *iter, gint column, @@ -77,10 +79,15 @@ void gtk_tree_store_set_value (GtkTreeStore *tree_store, void gtk_tree_store_set (GtkTreeStore *tree_store, GtkTreeIter *iter, ...); +void gtk_tree_store_set_valuesv (GtkTreeStore *tree_store, + GtkTreeIter *iter, + gint *columns, + GValue *values, + gint n_values); void gtk_tree_store_set_valist (GtkTreeStore *tree_store, GtkTreeIter *iter, va_list var_args); -void gtk_tree_store_remove (GtkTreeStore *tree_store, +gboolean gtk_tree_store_remove (GtkTreeStore *tree_store, GtkTreeIter *iter); void gtk_tree_store_insert (GtkTreeStore *tree_store, GtkTreeIter *iter, @@ -94,6 +101,18 @@ void gtk_tree_store_insert_after (GtkTreeStore *tree_store, GtkTreeIter *iter, GtkTreeIter *parent, GtkTreeIter *sibling); +void gtk_tree_store_insert_with_values (GtkTreeStore *tree_store, + GtkTreeIter *iter, + GtkTreeIter *parent, + gint position, + ...); +void gtk_tree_store_insert_with_valuesv (GtkTreeStore *tree_store, + GtkTreeIter *iter, + GtkTreeIter *parent, + gint position, + gint *columns, + GValue *values, + gint n_values); void gtk_tree_store_prepend (GtkTreeStore *tree_store, GtkTreeIter *iter, GtkTreeIter *parent); @@ -106,11 +125,23 @@ gboolean gtk_tree_store_is_ancestor (GtkTreeStore *tree_store, gint gtk_tree_store_iter_depth (GtkTreeStore *tree_store, GtkTreeIter *iter); void gtk_tree_store_clear (GtkTreeStore *tree_store); +gboolean gtk_tree_store_iter_is_valid (GtkTreeStore *tree_store, + GtkTreeIter *iter); +void gtk_tree_store_reorder (GtkTreeStore *tree_store, + GtkTreeIter *parent, + gint *new_order); +void gtk_tree_store_swap (GtkTreeStore *tree_store, + GtkTreeIter *a, + GtkTreeIter *b); +void gtk_tree_store_move_before (GtkTreeStore *tree_store, + GtkTreeIter *iter, + GtkTreeIter *position); +void gtk_tree_store_move_after (GtkTreeStore *tree_store, + GtkTreeIter *iter, + GtkTreeIter *position); -#ifdef __cplusplus -} -#endif /* __cplusplus */ +G_END_DECLS #endif /* __GTK_TREE_STORE_H__ */