Bonjour,
Je vais essayer de vous faire voir ce qu'il faut parce que c'est sur mon moteur de mon futur jeu donc c'est du gros dossier![]()
Bon, en premier lieu, il s'agit d'une intégration d'une petite API pour créer et gérer des widgets en SDL pour mon moteur, jusque là rien de bien compliqué, la suite ....
Dans le fichier bdialog.c à partir de la ligne 164, je gère la possibilité d'un événement utilisateur pour mon widget destiné à créer des boîtes de dialogues, tu verras ma solution temporaire à la ligne 181![]()
Ensuite, je travail essentiellement avec des pointeurs, tu peux le remarquer à la ligne 148 su même fichier. Voici les détails de la fonction bengine_get_event dans le fichier bengine.c à partir de la ligne 100. La structure privée contenant le SDL_Event se situe en haut du fichier, ligne 57 !
Voilà, c'est à peu près tout ce qu'il faut savoir, il n'y a pas un grand cheminement des données, j'ai essayé de rester le plus simple et pratique possible par rapport à l'envergure de mon projet. Tu peux voir mon main de test du moteur dans mon fichier main.c![]()
Le test que j'avais effectué était une fonction utilisateur (un callback) sur l'événement mouse_motion de ma boîte de dialogue. Le but de cette fonction qui n'existe plus dans le main, était d'afficher les coordonnées de la boîte. Ca fonctionnais bien mais même lorsque j'arrêtais de faire bouger la souris, j'affichais toujours la dernière position de la fenêtre, ce qui est un peu gênant![]()
J'espère que ca vous ira comme pistes parce que ca deviens de plus en plus gros alors pour montrer un problème et si tout est dispatché en modules ... ca pas très pratique![]()
Partager