From a68df0b2e4caada907eca339c11eb19e31b411c1 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Fri, 7 Jun 2002 22:02:23 +0000 Subject: [PATCH] New function, split off from gtk_tree_view_column_clear_attributes. * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes_by_info): New function, split off from gtk_tree_view_column_clear_attributes. (gtk_tree_view_column_clear_attributes): (gtk_tree_view_column_finalize): Call the new function, avoid recalculating the info from the renderer. (#84413) * gtk/gtktextview.c (text_view_child_new_anchored): Initialize vc->type in order to avoid a later UMR. (#84415) --- ChangeLog | 12 ++++++++++++ ChangeLog.pre-2-10 | 12 ++++++++++++ ChangeLog.pre-2-2 | 12 ++++++++++++ ChangeLog.pre-2-4 | 12 ++++++++++++ ChangeLog.pre-2-6 | 12 ++++++++++++ ChangeLog.pre-2-8 | 12 ++++++++++++ gtk/gtktextview.c | 1 + gtk/gtktreeviewcolumn.c | 22 ++++++++++++++++------ 8 files changed, 89 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 37982521b0..34ec3c7dde 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2002-06-07 Matthias Clasen + + * gtk/gtktreeviewcolumn.c + (gtk_tree_view_column_clear_attributes_by_info): New function, + split off from gtk_tree_view_column_clear_attributes. + (gtk_tree_view_column_clear_attributes): + (gtk_tree_view_column_finalize): Call the new function, avoid + recalculating the info from the renderer. (#84413) + + * gtk/gtktextview.c (text_view_child_new_anchored): Initialize + vc->type in order to avoid a later UMR. (#84415) + 2002-06-07 Mark McLoughlin * gtk/gtkwindow.c: (gtk_window_compute_configure_request): use diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 37982521b0..34ec3c7dde 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,15 @@ +2002-06-07 Matthias Clasen + + * gtk/gtktreeviewcolumn.c + (gtk_tree_view_column_clear_attributes_by_info): New function, + split off from gtk_tree_view_column_clear_attributes. + (gtk_tree_view_column_clear_attributes): + (gtk_tree_view_column_finalize): Call the new function, avoid + recalculating the info from the renderer. (#84413) + + * gtk/gtktextview.c (text_view_child_new_anchored): Initialize + vc->type in order to avoid a later UMR. (#84415) + 2002-06-07 Mark McLoughlin * gtk/gtkwindow.c: (gtk_window_compute_configure_request): use diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 37982521b0..34ec3c7dde 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,15 @@ +2002-06-07 Matthias Clasen + + * gtk/gtktreeviewcolumn.c + (gtk_tree_view_column_clear_attributes_by_info): New function, + split off from gtk_tree_view_column_clear_attributes. + (gtk_tree_view_column_clear_attributes): + (gtk_tree_view_column_finalize): Call the new function, avoid + recalculating the info from the renderer. (#84413) + + * gtk/gtktextview.c (text_view_child_new_anchored): Initialize + vc->type in order to avoid a later UMR. (#84415) + 2002-06-07 Mark McLoughlin * gtk/gtkwindow.c: (gtk_window_compute_configure_request): use diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 37982521b0..34ec3c7dde 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,15 @@ +2002-06-07 Matthias Clasen + + * gtk/gtktreeviewcolumn.c + (gtk_tree_view_column_clear_attributes_by_info): New function, + split off from gtk_tree_view_column_clear_attributes. + (gtk_tree_view_column_clear_attributes): + (gtk_tree_view_column_finalize): Call the new function, avoid + recalculating the info from the renderer. (#84413) + + * gtk/gtktextview.c (text_view_child_new_anchored): Initialize + vc->type in order to avoid a later UMR. (#84415) + 2002-06-07 Mark McLoughlin * gtk/gtkwindow.c: (gtk_window_compute_configure_request): use diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 37982521b0..34ec3c7dde 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,15 @@ +2002-06-07 Matthias Clasen + + * gtk/gtktreeviewcolumn.c + (gtk_tree_view_column_clear_attributes_by_info): New function, + split off from gtk_tree_view_column_clear_attributes. + (gtk_tree_view_column_clear_attributes): + (gtk_tree_view_column_finalize): Call the new function, avoid + recalculating the info from the renderer. (#84413) + + * gtk/gtktextview.c (text_view_child_new_anchored): Initialize + vc->type in order to avoid a later UMR. (#84415) + 2002-06-07 Mark McLoughlin * gtk/gtkwindow.c: (gtk_window_compute_configure_request): use diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 37982521b0..34ec3c7dde 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,15 @@ +2002-06-07 Matthias Clasen + + * gtk/gtktreeviewcolumn.c + (gtk_tree_view_column_clear_attributes_by_info): New function, + split off from gtk_tree_view_column_clear_attributes. + (gtk_tree_view_column_clear_attributes): + (gtk_tree_view_column_finalize): Call the new function, avoid + recalculating the info from the renderer. (#84413) + + * gtk/gtktextview.c (text_view_child_new_anchored): Initialize + vc->type in order to avoid a later UMR. (#84415) + 2002-06-07 Mark McLoughlin * gtk/gtkwindow.c: (gtk_window_compute_configure_request): use diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c index 3f2c7ecdf2..9447d7f643 100644 --- a/gtk/gtktextview.c +++ b/gtk/gtktextview.c @@ -7285,6 +7285,7 @@ text_view_child_new_anchored (GtkWidget *child, vc = g_new (GtkTextViewChild, 1); + vc->type = GTK_TEXT_WINDOW_PRIVATE; vc->widget = child; vc->anchor = anchor; diff --git a/gtk/gtktreeviewcolumn.c b/gtk/gtktreeviewcolumn.c index 7f76fc6cf7..74cd5d794f 100644 --- a/gtk/gtktreeviewcolumn.c +++ b/gtk/gtktreeviewcolumn.c @@ -121,7 +121,8 @@ static GList *gtk_tree_view_column_cell_next (GtkTreeViewColum GList *current); static GList *gtk_tree_view_column_cell_prev (GtkTreeViewColumn *tree_column, GList *current); - +static void gtk_tree_view_column_clear_attributes_by_info (GtkTreeViewColumn *tree_column, + GtkTreeViewColumnCellInfo *info); static GtkObjectClass *parent_class = NULL; static guint tree_column_signals[LAST_SIGNAL] = { 0 }; @@ -346,7 +347,7 @@ gtk_tree_view_column_finalize (GObject *object) info->destroy = NULL; d (info->func_data); } - gtk_tree_view_column_clear_attributes (tree_column, info->cell); + gtk_tree_view_column_clear_attributes_by_info (tree_column, info); g_object_unref (G_OBJECT (info->cell)); g_free (info); } @@ -1452,12 +1453,21 @@ gtk_tree_view_column_clear_attributes (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell_renderer) { GtkTreeViewColumnCellInfo *info; - GSList *list; g_return_if_fail (GTK_IS_TREE_VIEW_COLUMN (tree_column)); g_return_if_fail (GTK_IS_CELL_RENDERER (cell_renderer)); + info = gtk_tree_view_column_get_cell_info (tree_column, cell_renderer); + gtk_tree_view_column_clear_attributes_by_info (tree_column, info); +} + +static void +gtk_tree_view_column_clear_attributes_by_info (GtkTreeViewColumn *tree_column, + GtkTreeViewColumnCellInfo *info) +{ + GSList *list; + list = info->attributes; while (list && list->next) @@ -2285,9 +2295,9 @@ gtk_tree_view_column_cell_set_cell_data (GtkTreeViewColumn *tree_column, /** * gtk_tree_view_column_cell_get_size: * @tree_column: A #GtkTreeViewColumn. - * @cell_area: The area a the column will be allocated, or %NULL - * @x_offset: location to return x offset of cell relative to @cell_area, or %NULL - * @y_offset: location to return y offset of cell relative to @cell_area, or %NULL + * @cell_area: The area a cell in the column will be allocated, or %NULL + * @x_offset: location to return x offset of a cell relative to @cell_area, or %NULL + * @y_offset: location to return y offset of a cell relative to @cell_area, or %NULL * @width: location to return width needed to render a cell, or %NULL * @height: location to return height needed to render a cell, or %NULL *