Probleme mit TreeView (GTK2)
-
Hallo Leute,
ich habe irgend wie ein kleines Problem damit Daten in einem TreeView
hinzu zufügen. Es kommt kein Fehler, es tauchen einfach keine Daten
im TreeView auf.ausschnitt aus der header datei:
enum { COL_PICTURE = 0, COL_TEXT1, COL_TEXT2, COL_NUMBER } ; struct data{ GtkWidget *treeview; } list;
callback für das hinzufügen von den Daten :
void add(GtkWidget *widget, gpointer daten) { GtkTreeModel *model; GtkTreeIter iter; GdkPixbuf *icon; model = gtk_tree_view_get_model(GTK_TREE_VIEW(daten)); icon = load_pixbuf("icon.png"); // meine function zum laden eines bildes gtk_list_store_append(GTK_LIST_STORE(model), &iter); gtk_list_store_set(GTK_LIST_STORE(model), &iter, COL_PICTURE, icon, COL_TEXT1, "text", COL_TEXT2, "text", -1); }
function zum erstellen des treeviews :
static GtkTreeView * create_treeview(void) { GtkTreeViewColumn *picture_column, *text1_column, *text2_column; GtkCellRenderer *picture_renderer, *text1_renderer, *text2_renderer; GtkTreeView *treeview; GtkListStore *model; model = gtk_list_store_new(COL_NUMBER, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_STRING); treeview = g_object_new(GTK_TYPE_TREE_VIEW, "model", model, "headers_visible", TRUE, NULL); picture_renderer = gtk_cell_renderer_pixbuf_new(); text1_renderer = gtk_cell_renderer_text_new(); text2_renderer = gtk_cell_renderer_text_new(); picture_column = g_object_new(GTK_TYPE_TREE_VIEW_COLUMN, "title", "Bild", "min-width", 120, NULL); text1_column = g_object_new(GTK_TYPE_TREE_VIEW_COLUMN, "title", "text1", "min-width", 400, NULL); text2_column = g_object_new(GTK_TYPE_TREE_VIEW_COLUMN, "title", "text2", NULL); gtk_tree_view_column_pack_start(picture_column, picture_renderer, FALSE); gtk_tree_view_append_column(treeview, picture_column); gtk_tree_view_column_pack_start(settings_column, settings_renderer, FALSE); gtk_tree_view_append_column(treeview, settings_column); gtk_tree_view_column_pack_start(button_column, button_renderer, FALSE); gtk_tree_view_append_column(treeview, button_column); return treeview; }
signal handler ausschnitt für den button zum hinzufügen :
. . . g_signal_connect(GTK_OBJECT(hbuttons[0]), "clicked", G_CALLBACK(add), GTK_TREE_VIEW(list.treeview)); . . .
Also ich sitz da schon ne ganze weile dran und find den fehler nicht.
Kann mir jemand helfen?