# HG changeset patch # User bastiena # Date 1332771771 -7200 # Node ID a1bf0d21022e9229b9e9549a19027f59cbd74e2f # Parent 925b7ee746e32f294e921dd83a2bf04e9aa234e8 Middleware : Config updated Mistake in config loading/saving repaired debug augmented for proximity images gestures displaying diff -r 925b7ee746e3 -r a1bf0d21022e middleware/src/App.config --- a/middleware/src/App.config Fri Mar 23 16:24:36 2012 +0100 +++ b/middleware/src/App.config Mon Mar 26 16:22:51 2012 +0200 @@ -4,10 +4,11 @@ - - + + + \ No newline at end of file diff -r 925b7ee746e3 -r a1bf0d21022e middleware/src/Communication/Server.cs --- a/middleware/src/Communication/Server.cs Fri Mar 23 16:24:36 2012 +0100 +++ b/middleware/src/Communication/Server.cs Mon Mar 26 16:22:51 2012 +0200 @@ -53,7 +53,7 @@ private bool leftHandCursorCreated; private bool rightHandCursorCreated; private bool messageCreated; - private bool gestureLocked; + private bool gestureLocked, modLocked; //Intervalle minimum entre les gestures. private int timerElapsing; //Timer. @@ -75,6 +75,7 @@ rightHandCursorCreated = false; messageCreated = false; gestureLocked = false; + modLocked = false; timerElapsing = _timerElapsing; @@ -105,12 +106,14 @@ } /* - * Méthode appelée à l'expiration du timer. + * Méthode appelée à l'expiration du timer pour les gestures et modes. */ public void _timer_Elapsed(object sender, ElapsedEventArgs e) { //On débloque la détection de gesture. gestureLocked = false; + //On débloque la notification de nouveau mode. + modLocked = false; //On arrête le timer. _timer.Stop(); } @@ -191,7 +194,7 @@ /* * Méthode appelée lors d'une notification de type : l'utilisateur fait un push/pull. */ - public void Pull(object sender, PushEventArgs e) + public void Push(object sender, PushEventArgs e) { if(e.hand == Tracking.Gestures.PushDetector.Hand.NONE) return; @@ -234,6 +237,27 @@ } /* + * Méthode appelée lorsqu'on doit entrer dans un autre mode. + */ + public void ModeNotification(String code) + { + //Si on a été notifié. + if (!modLocked) + { + modLocked = true; + + //On crée un message contenant le code à envoyer. + if (!messageCreated) + { + messageCreated = true; + server.AddTuioString(2, code); + //On démarre le timer. + _timer.Start(); + } + } + } + + /* * Permet de convertir un point de position de noeud en Point3D. */ private Point3D SkeletonPointToPoint3D(SkeletonPoint p) @@ -258,7 +282,7 @@ Thread.Sleep(25); //Si une gesture a été effectuée et que le délai d'attente est expiré. - if (messageCreated && !gestureLocked) + if (messageCreated && !gestureLocked && !modLocked) { //On débloque la détection de gesture et on supprime l'objet envoyant les messages OSC de gesture. messageCreated = false; diff -r 925b7ee746e3 -r a1bf0d21022e middleware/src/Debug/DebugParameters.xaml --- a/middleware/src/Debug/DebugParameters.xaml Fri Mar 23 16:24:36 2012 +0100 +++ b/middleware/src/Debug/DebugParameters.xaml Mon Mar 26 16:22:51 2012 +0200 @@ -26,54 +26,81 @@ - + + + + + + + +