Re: gtk_tree_view_column_set_cell_data_func gives GTK-CRITICAL error

2011-11-30 Thread Tadej Borovšak
Hi.

2011/11/30 James Steward jamesstew...@optusnet.com.au:
 col = gtk_tree_view_insert_column_with_attributes (
                GTK_TREE_VIEW (view),
                -1,
                Title,
                renderer,
                text, i,
                strikethrough, j,
                background, k,
                background-set, TRUE,
                NULL);

 gtk_tree_view_column_set_cell_data_func(
                gtk_tree_view_get_column(GTK_TREE_VIEW(view), col),
                renderer,
                render_float,
                GINT_TO_POINTER(i),
                NULL);

IIRC, gtk_tree_view_insert_column_with_attributes() returns number of
columns and gtk_tree_view_get_column() expects to get column number
where first column is 0. So you may be off-by-one in your call to
gtk_tree_view_column_set_cell_data_func().

Cheers,
Tadej

-- 
Tadej Borovšak
tadeboro.blogspot.com
tadeb...@gmail.com
tadej.borov...@gmail.com
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: gtk_tree_view_column_set_cell_data_func gives GTK-CRITICAL error

2011-11-30 Thread James Steward

On 30/11/11 20:04, Tadej Borovšak wrote:

Hi.

2011/11/30 James Stewardjamesstew...@optusnet.com.au:

col = gtk_tree_view_insert_column_with_attributes (
GTK_TREE_VIEW (view),
-1,
Title,
renderer,
text, i,
strikethrough, j,
background, k,
background-set, TRUE,
NULL);

gtk_tree_view_column_set_cell_data_func(
gtk_tree_view_get_column(GTK_TREE_VIEW(view), col),
renderer,
render_float,
GINT_TO_POINTER(i),
NULL);


IIRC, gtk_tree_view_insert_column_with_attributes() returns number of
columns and gtk_tree_view_get_column() expects to get column number
where first column is 0. So you may be off-by-one in your call to
gtk_tree_view_column_set_cell_data_func().


Well spotted!  Thanks very much.

Regards,
James.
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

gtk_tree_view_column_set_cell_data_func gives GTK-CRITICAL error

2011-11-29 Thread James Steward

Hi,

Wanting to display floats with a particular format in a tree view.

void render_float(GtkTreeViewColumn *column,
GtkCellRenderer   *renderer,
GtkTreeModel  *model,
GtkTreeIter   *iter,
gpointer   user_data)
{
gfloat  f;
gchar   buf[20];

int col = GPOINTER_TO_INT(user_data);

gtk_tree_model_get(model, iter, col, f, -1);

g_snprintf(buf, sizeof(buf), %.2f, f);

g_object_set(renderer, text, buf, NULL);
}

G_MODULE_EXPORT gboolean on_menu_show_results_activate(
GtkWidget *w,
GdkEvent *event,
gpointer user_data)
{

...

renderer = gtk_cell_renderer_text_new ();

col = gtk_tree_view_insert_column_with_attributes (
GTK_TREE_VIEW (view),
-1,
Title,
renderer,
text, i,
strikethrough, j,
background, k,
background-set, TRUE,
NULL);

gtk_tree_view_column_set_cell_data_func(
gtk_tree_view_get_column(GTK_TREE_VIEW(view), col),
renderer,
render_float,
GINT_TO_POINTER(i),
NULL);
...

}

When I run the app I get:

Gtk-CRITICAL **: gtk_cell_layout_set_cell_data_func: assertion 
`GTK_IS_CELL_LAYOUT (cell_layout)' failed


Can anyone spot what I've done wrong?  There's no compiler warnings, 
just this runtime error.


--
James.
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list