X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtktreeview.h;h=cdd94f03ebbb9a78ffb964f51dc2f046b7e4da01;hb=45ad8a06ad511ad95a74172172b9fe459bc666ad;hp=4c609d9d42bacbf0c110fa5570f75dfe410fc537;hpb=e0e6d5b4dfefa9180f64cdbba83071d209643ec8;p=~andy%2Fgtk diff --git a/gtk/gtktreeview.h b/gtk/gtktreeview.h index 4c609d9d4..cdd94f03e 100644 --- a/gtk/gtktreeview.h +++ b/gtk/gtktreeview.h @@ -12,18 +12,16 @@ * 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_VIEW_H__ +#define __GTK_TREE_VIEW_H__ + #if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) #error "Only can be included directly." #endif -#ifndef __GTK_TREE_VIEW_H__ -#define __GTK_TREE_VIEW_H__ - #include #include #include @@ -32,7 +30,15 @@ G_BEGIN_DECLS - +/** + * GtkTreeViewDropPosition: + * @GTK_TREE_VIEW_DROP_BEFORE: dropped row is inserted before + * @GTK_TREE_VIEW_DROP_AFTER: dropped row is inserted after + * @GTK_TREE_VIEW_DROP_INTO_OR_BEFORE: dropped row becomes a child or is inserted before + * @GTK_TREE_VIEW_DROP_INTO_OR_AFTER: dropped row becomes a child or is inserted after + * + * An enum for determining where a dropped row goes. + */ typedef enum { /* drop before/after this row */ @@ -115,20 +121,78 @@ struct _GtkTreeViewClass void (*_gtk_reserved8) (void); }; - +/** + * GtkTreeViewColumnDropFunc: + * @tree_view: A #GtkTreeView + * @column: The #GtkTreeViewColumn being dragged + * @prev_column: A #GtkTreeViewColumn on one side of @column + * @next_column: A #GtkTreeViewColumn on the other side of @column + * @data: (closure): user data + * + * Function type for determining whether @column can be dropped in a + * particular spot (as determined by @prev_column and @next_column). In + * left to right locales, @prev_column is on the left of the potential drop + * spot, and @next_column is on the right. In right to left mode, this is + * reversed. This function should return %TRUE if the spot is a valid drop + * spot. Please note that returning %TRUE does not actually indicate that + * the column drop was made, but is meant only to indicate a possible drop + * spot to the user. + * + * Returns: %TRUE, if @column can be dropped in this spot + */ typedef gboolean (* GtkTreeViewColumnDropFunc) (GtkTreeView *tree_view, GtkTreeViewColumn *column, GtkTreeViewColumn *prev_column, GtkTreeViewColumn *next_column, gpointer data); + +/** + * GtkTreeViewMappingFunc: + * @tree_view: A #GtkTreeView + * @path: The path that's expanded + * @user_data: user data + * + * Function used for gtk_tree_view_map_expanded_rows(). + */ typedef void (* GtkTreeViewMappingFunc) (GtkTreeView *tree_view, GtkTreePath *path, gpointer user_data); + +/** + * GtkTreeViewSearchEqualFunc: + * @model: the #GtkTreeModel being searched + * @column: the search column set by gtk_tree_view_set_search_column() + * @key: the key string to compare with + * @iter: a #GtkTreeIter pointing the row of @model that should be compared + * with @key. + * @search_data: (closure): user data from gtk_tree_view_set_search_equal_func() + * + * A function used for checking whether a row in @model matches + * a search key string entered by the user. Note the return value + * is reversed from what you would normally expect, though it + * has some similarity to strcmp() returning 0 for equal strings. + * + * Returns: %FALSE if the row matches, %TRUE otherwise. + */ typedef gboolean (*GtkTreeViewSearchEqualFunc) (GtkTreeModel *model, gint column, const gchar *key, GtkTreeIter *iter, gpointer search_data); + +/** + * GtkTreeViewRowSeparatorFunc: + * @model: the #GtkTreeModel + * @iter: a #GtkTreeIter pointing at a row in @model + * @data: (closure): user data + * + * Function type for determining whether the row pointed to by @iter should + * be rendered as a separator. A common way to implement this is to have a + * boolean column in the model, whose values the #GtkTreeViewRowSeparatorFunc + * returns. + * + * Returns: %TRUE if the row is a separator + */ typedef gboolean (*GtkTreeViewRowSeparatorFunc) (GtkTreeModel *model, GtkTreeIter *iter, gpointer data); @@ -148,16 +212,17 @@ void gtk_tree_view_set_model (GtkTreeView GtkTreeModel *model); GtkTreeSelection *gtk_tree_view_get_selection (GtkTreeView *tree_view); -#ifndef GTK_DISABLE_DEPRECATED - +GDK_DEPRECATED_IN_3_0_FOR(gtk_scrollable_get_hadjustment) GtkAdjustment *gtk_tree_view_get_hadjustment (GtkTreeView *tree_view); +GDK_DEPRECATED_IN_3_0_FOR(gtk_scrollable_set_hadjustment) void gtk_tree_view_set_hadjustment (GtkTreeView *tree_view, GtkAdjustment *adjustment); +GDK_DEPRECATED_IN_3_0_FOR(gtk_scrollable_get_vadjustment) GtkAdjustment *gtk_tree_view_get_vadjustment (GtkTreeView *tree_view); +GDK_DEPRECATED_IN_3_0_FOR(gtk_scrollable_set_vadjustment) void gtk_tree_view_set_vadjustment (GtkTreeView *tree_view, GtkAdjustment *adjustment); -#endif gboolean gtk_tree_view_get_headers_visible (GtkTreeView *tree_view); void gtk_tree_view_set_headers_visible (GtkTreeView *tree_view, @@ -169,6 +234,11 @@ void gtk_tree_view_set_headers_clickable (GtkTreeView void gtk_tree_view_set_rules_hint (GtkTreeView *tree_view, gboolean setting); gboolean gtk_tree_view_get_rules_hint (GtkTreeView *tree_view); +GDK_AVAILABLE_IN_3_8 +gboolean gtk_tree_view_get_activate_on_single_click (GtkTreeView *tree_view); +GDK_AVAILABLE_IN_3_8 +void gtk_tree_view_set_activate_on_single_click (GtkTreeView *tree_view, + gboolean single); /* Column funtions */ gint gtk_tree_view_append_column (GtkTreeView *tree_view, @@ -190,6 +260,9 @@ gint gtk_tree_view_insert_column_with_data_func (GtkTreeView GtkTreeCellDataFunc func, gpointer data, GDestroyNotify dnotify); + +GDK_AVAILABLE_IN_3_4 +guint gtk_tree_view_get_n_columns (GtkTreeView *tree_view); GtkTreeViewColumn *gtk_tree_view_get_column (GtkTreeView *tree_view, gint n); GList *gtk_tree_view_get_columns (GtkTreeView *tree_view); @@ -270,6 +343,13 @@ void gtk_tree_view_get_visible_rect (GtkTreeView gboolean gtk_tree_view_get_visible_range (GtkTreeView *tree_view, GtkTreePath **start_path, GtkTreePath **end_path); +gboolean gtk_tree_view_is_blank_at_pos (GtkTreeView *tree_view, + gint x, + gint y, + GtkTreePath **path, + GtkTreeViewColumn **column, + gint *cell_x, + gint *cell_y); /* Drag-and-Drop support */ void gtk_tree_view_enable_model_drag_source (GtkTreeView *tree_view, @@ -360,6 +440,7 @@ typedef void (* GtkTreeDestroyCountFunc) (GtkTreeView *tree_view, GtkTreePath *path, gint children, gpointer user_data); +GDK_DEPRECATED_IN_3_4 void gtk_tree_view_set_destroy_count_func (GtkTreeView *tree_view, GtkTreeDestroyCountFunc func, gpointer data,