Hello,
L'application consiste d'un frame qui a un glCanvas.
Il y a du rendu 3d sur le canvas, et je construis par dessus un GUI en 2D.
J'utilse le picking pour intéragir avec le GUI.
Tout ça sur un écran multi-touch.
Donc j'ai créé des événements personnalisés qui sont créés quand on pose un doigt ou bien quand on le déplace.
Le problème que j'ai c'est qu'avec la souris j'arrive à "picker" les objets sur le canvas, mais avec le doigt cela ne marche pas.
Ce que j'ai remarqué, c'est que en utilisant la souris, l'événement véhicule les propriétés du canvas, genre viewport et autre, par contre les événements persos ne le font pas.
Et je me demande pourquoi?
Le constructeur des événements persos:
Les événements sont générés dans la classe frame, mais ils sont rédirigés dans la classe du canvas et sont traités dans cette classe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 wxTouchEvent( wxWindow* win = (wxWindow*) NULL );
Donc quand je crée l'objet my_event, je lui passe bien en paramètre le canvas, mais mais malgré ceci viewport a des données fausses.
Pourtant quand je compare l'objet event reçu de la souris et du touché, m_eventObject est bien la classe canvas.
Est-ce quelqu'un aurait une idée où est-ce que je devrais chercher?
Merci beaucoup
Greg
Partager