cs_guifr
Messages postés105Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention19 mai 2005
-
10 mai 2005 à 23:43
cs_guifr
Messages postés105Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention19 mai 2005
-
19 mai 2005 à 19:29
Bonsoir à tous,
Je me suis plongé depuis peu dans les délices de la libglade et je
bloque sur un point crucial : impossible d'utilisez les signaux ! En
créant un projet tout bête avec juste un bouton, si par exemple au
signal "clicked" je lui demande d'accomplir un traitement tel que
gtk_main_quit, il me le fera sans problèmes, mais dès lors que je lui
assigne une fonction de mon cru, il ne l'executera pas.
Et pourtant je ne suis vraiment pas loin de l'exemple "test-libglade.c" de la docu officielle. J'ai bien mis le glade_xml_signal_autoconnect(), bien vérifié que le nom de la fonction appellée dans le fichier glade corresponde bien à celui du .c... bref je sèche.
Alors je tente de tourner le problème sous tous les angles... et je ne parviens à m'extriquer de cette impasse.
Et je ne sais plus trop où chercher; que vérifier... donc si vous avez une idée elle est la bienvenue !
cs_guifr
Messages postés105Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention19 mai 2005 18 mai 2005 à 19:34
Oh joie ! j'ai fini par trouver !
En fait le problème est propre à la compilation sous win32; pour ceux
que ça intéresse, il suffit de faire précéder ses fonctions de :
__declspec(dllexport)
Bon forcément ça fait un peu
brouillon, et surtout j'ai peur que ça coince lors d'une compilation
sous un autre environement que win32 (ce qui serait grandment dommage
pour la très grande portabilité de GTK et de la libglade), donc
je propose : on dit merci le précompilo et on se fait un joli header
avec dedans des trucs qui ressemblent à ça :
Et voilà, pour GTK_CB pour GTK
call back bien sûr, mais libre à vous de choisir autre chose ! Il
suffira alors de faire précéder toutes les fonctions à connecter par
GTK_CB.
Je n'ai pas encore eu la joie de compiler mon esquisse de projet sous
Linux, si quelqu'un a l'occasion de vérifier si ce morecau de code ne
coince pas !
cs_guifr
Messages postés105Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention19 mai 2005 19 mai 2005 à 19:29
Tant que j'y pense :
Pour ceux que ça amuserait de compiler en c++ (et j'en fait parti), ce
n'est pas une surprise, GTK préfère le C... et libglade n'échape pas à
la règle !!! pas envie de prendre le bindings libglademm (et je vous
comprend) ? Bin là aussi ça va poser problème car la libglade veut que
les fonctions soient en C, mais pas de panique ! si vous les prototipez
mettez juste :