Jak na GtkTreeView?

Karel Zak zakkr na zf.jcu.cz
Úterý Leden 13 09:21:32 CET 2004


On Tue, Jan 13, 2004 at 09:00:34AM +0100, Ladislav Vaiz wrote:
> Ahoj,
> pouzivam objekt GtkTreeView v GTK2.
> I pres veskerou snahu se mi nepodarilo zjistit, jak se navesit na signal
> typu "activate" (enter nebo doubleclick). Nevi nekdo jak na to?
> 
> Pritom: -staci mi jenda uroven zanoreni (listview)
>         -nepotrebuju rozlisovat sloupce ve vybrane radce (sipky do stran)
> 
> Pokud je to popsane v dokumentaci, tak mi to zatim uspesne unika. Take
> patrani ve zdrojacich obdobnych programu k nicemu nevedlo.

 GtkTreeView je test vydrze programatora :-)

 v = gtk_tree_view_new_with_model(model)
 selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(v));

 /* zmena vyberu */
 g_signal_connect (G_OBJECT (selection),
            "changed",
            G_CALLBACK (muj_selection_changed), NULL);

 /* double click */
 g_signal_connect (G_OBJECT (v),
            "row-activated",
            G_CALLBACK (moje_row_activated), NULL);


 Ve funkci muj_selection_changed (GtkTreeSelection *selection) si pak muzete
 zjistit jaka radka (radky) jsou vybrany pomoci
 gtk_tree_selection_get_selected().

 Ve funci moje_row_activated(GtkTreeView *treeview, GtkTreePath *path, 
 GtkTreeViewColumn *column) pak muzete mit nejakou rekaci na double
 click.

 Pokud tam jsou vnoreni (tree) tak je to stejne, jedine tam muzete
 pridat podobne jako pro row-activated i "row-collapsed" / "row-expanded"

    Karel

-- 
 Karel Zak  <zakkr na zf.jcu.cz>
 http://home.zf.jcu.cz/~zakkr/


Další informace o konferenci Linux