Comprends pas les parametres passés à ma fonction callback
Bonjour,
Voila, j'ai un petit probleme, avec ce code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| #include <stdlib.h>
#include <gtk/gtk.h>
struct _MainWindow
{
GtkWidget *pWindow;
GtkWidget *pVBox;
GtkWidget *pEntry;
GtkWidget *pButton;
GtkWidget *pLabel;
};
typedef struct _MainWindow MainWindow;
void OnUpdate(GtkWidget *pEntry, gpointer data);
int main(int argc, char **argv)
{
MainWindow *pApp;
gtk_init(&argc, &argv);
pApp = g_malloc(sizeof(MainWindow));
/****************************************
On crée les differents widgets
****************************************/
/* Connexion du signal "activate" du GtkEntry */
g_signal_connect(G_OBJECT(pApp->pEntry), "activate", G_CALLBACK(OnUpdate),
(gpointer*) pApp);
}
/* Fonction callback execute lors du signal "activate" */
void OnUpdate(GtkWidget *pEntry, gpointer data)
{
const gchar *sText;
MainWindow *pApp;
/* Recuperation de data */
pApp = (MainWindow*) data;
/* Recuperation du texte contenu dans le GtkEntry */
sText = gtk_entry_get_text(GTK_ENTRY(pApp->pEntry));
/* Modification du texte contenu dans le GtkLabel */
gtk_label_set_text(GTK_LABEL(pApp->pLabel), sText);
} |
Je ne comprends pas ce parametre: (gpointer*) pApp,
Ni cette ligne: pApp = (MainWindow*) data;
En fait, je ne comprends pas du tout la syntaxe..
Donc, ben si vous pouvez m'expliquer, ça serait sympa..
Merci