mit g_signal_connect variable übergeben
-
hi,
Ich hab da ein grösseres Anliegen. Ich weiss einfach nicht wie ich mit g_signal_connect nen einfachen int wert übergeben kann, also beispielsweise:
int g = 5; g_signal_connect (G_OBJECT(knopf),"released", G_CALLBACK(test_func),g);
das funktioniert net, ich hab auch schon dies versucht:
void test_func(GtkWidget *widget, gpointer g) { ... } int g = 5; g_signal_connect( GTK_OBJECT( knopf ), "released", G_CALLBACK(test_func ),&g );
dann hab ich zwar die adresse, ich bekomm den wert aber net raus..
wäre super wenn ihr mir da helfen könntet
mfg
Sui_the_Doc
-
und den gpointer auch nach int ( oder gint ) zurückgecastet ?
da gibts auch makros für inner glib: GPOINTER_TO_INT().ps. endlich mal einer, der auch mit GObjects rummacht
ach ja sehe grade dass du die addresse des int übergibst.
eigentlich will man nen gpointer haben.am besten beim reinschieben nach gpointer casten mit (GINT_TO_GPOINTER()),
und wenn wir schon beim casten sind: die callback funktion am besten
auch mit G_CALLBACK (func) casten.so haben mir das ein paar gimp/gtk entwickler beigebracht