Liste des évènements

 

Provenant de notre fenêtre, nous allons recevoir des évènements (via une procédure de messages qui sera transparente pour nous par la suite).

 

Lorsqu'un message est traité, il peut éventuellement donner lieu à un évènement dans l'instance GLWindows associée à la fenêtre traitée.

Voici tout d'abord une liste d'évènements portablent tous environnements (Pour rappel, fonctionne sous Windows, X Window et GLUT (Windows/X Window)

virtual bool onCreateGLW() : Renvoyer true si tout est ok, false stoppant la création.
virtual void onDestroyGLW() : une demande destructions de la fenêtre GLWindows est reçue, et est confirmée (voir l'évènement onClose déclenché avant cet évènement). vous pouvez donc à ce niveau libérer vos propres ressources
virtual bool onSizeGLW(long type, int width, int height) : Retaillage de la fenêtre, retournez true si tout est ok, sinon laisser à windows.

Image non trouvée !Par défaut, cet évènement repositionne le surseur de la souris au centre de la fenêtre sans regarder si la fenêtre a ou non le curseur de la souris en gestion. Il ne faut donc pas que ce soit la souris qui justement retaille la fenêtre, vous auriez des surprises sinon !


virtual bool onPaintGLW() : Par défaut, dessine un cube. Il faut retourner true pour que windows ne traite pas le message.
virtual bool onKeyDownGLW (GLWPARAM wParam) : Par défaut, gère la position de la caméra. Si la touche correspond à un déplacement de la caméra, l'évènement retourne true, sinon retourne false.
virtual bool onClickMouseGLW (UINT message) : Par défaut, retourne false pour indiquer à Windows qu'il faut traiter le message
virtual bool onPosMouseGLW (POINT xyScrSouris, POINT xySourisClt) : Gestion de la souris évènement qui par défaut gérera la position de la caméra. Retourne donc true par défaut.

virtual bool showMouse () : Afficher le curseur de la souris

virtual bool hideMouse() : Cacher le curseur de la souris

 

Des évènements ne fonctionnant pas sous GLUT mais qui fonctionnent sous Windows ou X Window:

virtual bool onCloseGLW() : Demande de fermeture de la fenêtre, renvoyez true pour continuer, false pour arrêter. Vous pourrez donc demander éventuellement une confirmation de fermeture de votre fenêtre.

virtual bool onKeyUpGLW (GLWPARAM wParam) : Par défaut, retourne false pour laisser Windows traiter le message. Indique qu'une touche est relâchée. wParam contenant le code de la touche.

 

Les évènements spécifiques à Windows, donc non portables dans les différents environnements :

virtual bool onCommandGLW(UINT msg, HWND ctrl, UINT id) : Par défaut, rien donc retourne false. Gestion menu, ...
virtual bool onEventGLW(UINT, WPARAM, LPARAM, long&) Par défaut, retourne false afin de laisser windows gérer le message. Cet évènement se déclenche sur les messages Windows que je ne gère pas ...Le premier paramètre est le message reçu, les suivants, les paramètres correspondant.

Les évènements spécifiques à X Windows, donc non portables dans les différents environnements :