public Window1() { InitializeComponent(); Player = new LokiPlayer(Environment.CurrentDirectory + @"\RecordedMouseInput.loki"); Recorder = new LokiRecorder(Environment.CurrentDirectory + @"\RecordedMouseInput.loki"); bPlay.IsEnabled = false; bPause.IsEnabled = false; Manager = new LokiManager(); Manager.RegisterListener(LokiManager.Zone2, LokiEventType.ZonePressed, this); Manager.RegisterListener(LokiManager.Zone2, LokiEventType.ZoneReleased, this); Manager.RegisterListener(LokiManager.Zone4, LokiEventType.ZonePressed, this); Manager.RegisterListener(LokiManager.Zone4, LokiEventType.ZoneReleased, this); Manager.RegisterListener(LokiManager.Zone5, LokiEventType.ZonePressed, this); Manager.RegisterListener(LokiManager.Zone5, LokiEventType.ZoneReleased, this); Manager.RegisterListener(LokiManager.Zone6, LokiEventType.ZonePressed, this); Manager.RegisterListener(LokiManager.Zone6, LokiEventType.ZoneReleased, this); Manager.RegisterListener(LokiManager.Zone7, LokiEventType.ZonePressed, this); Manager.RegisterListener(LokiManager.Zone7, LokiEventType.ZoneReleased, this); Manager.RegisterListener(LokiManager.Zone8, LokiEventType.ZonePressed, this); Manager.RegisterListener(LokiManager.Zone8, LokiEventType.ZoneReleased, this); Manager.RegisterListener(LokiManager.Zone9, LokiEventType.ZonePressed, this); Manager.RegisterListener(LokiManager.Zone9, LokiEventType.ZoneReleased, this); // Ensure the image rendering does not interpolate RenderOptions.SetBitmapScalingMode(SensorImage, BitmapScalingMode.NearestNeighbor); // Initialise the mouse and register the callback function TouchMouseSensorEventManager.Handler += TouchMouseSensorHandler; TouchMouseSensorEventManager.Handler += Manager.TouchMouseSensorHandler; // Registers callback function for the player Player.Handler += new PlaybackTouchMouseSensorHandler(Player_Handler); Player.Handler += Manager.PlayerHandler; labels.Add(LokiManager.Zone1, lZone1); labels.Add(LokiManager.Zone2, lZone2); labels.Add(LokiManager.Zone3, lZone3); labels.Add(LokiManager.Zone4, lZone4); labels.Add(LokiManager.Zone5, lZone5); labels.Add(LokiManager.Zone6, lZone6); labels.Add(LokiManager.Zone7, lZone7); labels.Add(LokiManager.Zone8, lZone8); labels.Add(LokiManager.Zone9, lZone9); }
public MainWindow() { Elephant = new TokiElephant(); Loki = new LokiManager(); Loki.RegisterListener(LokiManager.Zone1, LokiEventType.All, this); Loki.RegisterListener(LokiManager.Zone2, LokiEventType.All, this); Loki.RegisterListener(LokiManager.Zone3, LokiEventType.All, this); Loki.RegisterListener(LokiManager.Zone4, LokiEventType.All, this); Loki.RegisterListener(LokiManager.Zone5, LokiEventType.All, this); Loki.RegisterListener(LokiManager.Zone6, LokiEventType.All, this); Loki.RegisterListener(LokiManager.Zone7, LokiEventType.All, this); Loki.RegisterListener(LokiManager.Zone8, LokiEventType.All, this); Loki.RegisterListener(LokiManager.Zone9, LokiEventType.All, this); // Initialise the mouse and register the callback function TouchMouseSensorEventManager.Handler += Loki.TouchMouseSensorHandler; Levels.Add(new Level() { Steps = new List<Step>() }); Levels[0].Steps.Add(new Step() { Part = BodyPart.Trunk, Gesture = LokiEventType.ZonePressed }); Levels[0].Steps.Add(new Step() { Part = BodyPart.GreenEar, Gesture = LokiEventType.ZonePressed }); Levels[0].Steps.Add(new Step() { Part = BodyPart.YellowEar, Gesture = LokiEventType.ZonePressed }); Levels.Add(new Level() { Steps = new List<Step>() }); Levels[1].Steps.Add(new Step() { Part = BodyPart.Trunk, Gesture = LokiEventType.ZonePressed }); Levels[1].Steps.Add(new Step() { Part = BodyPart.GreenEar, Gesture = LokiEventType.Tap }); Levels[1].Steps.Add(new Step() { Part = BodyPart.YellowEar, Gesture = LokiEventType.Tap }); Levels.Add(new Level() { Steps = new List<Step>() }); Levels[2].Steps.Add(new Step() { Part = BodyPart.Trunk, Gesture = LokiEventType.ZonePressed }); Levels[2].Steps.Add(new Step() { Part = BodyPart.GreenEar, Gesture = LokiEventType.Tap }); Levels[2].Steps.Add(new Step() { Part = BodyPart.YellowEar, Gesture = LokiEventType.DoubleTap }); cTimer = new Timer(LokiApp.Properties.Settings.Default.CalibrationNotRespondTimeOutSeconds * 1000); cTimer.Elapsed += new ElapsedEventHandler(cTimer_Elapsed); eaTimer = new Timer(LokiApp.Properties.Settings.Default.ErrorAlertSeconds * 1000); eaTimer.Elapsed += new ElapsedEventHandler(eaTimer_Elapsed); InitializeComponent(); }