private void InkPresenter_StrokesErased(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesErasedEventArgs args)
        {
            StopTimer();

            foreach (var stroke in args.Strokes)
            {
                inkRecognizer.RemoveStroke(stroke.Id);
            }

            StartTimer();
        }
        private void InkPresenter_StrokesCollected(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesCollectedEventArgs args)
        {
            StopTimer();

            foreach (var stroke in args.Strokes)
            {
                inkRecognizer.AddStroke(stroke);
            }

            StartTimer();
        }
        // </InkPresenter_StrokesCollected>

        // <InkPresenter_StrokesErased>
        private void InkPresenter_StrokesErased(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesErasedEventArgs args)
        {
            StopTimer();

            foreach (var stroke in args.Strokes)
            {
                strokeStore.RemoveStroke(strokeToIdMap[stroke]);
                idToStrokeMap.Remove(strokeToIdMap[stroke]);
                strokeToIdMap.Remove(stroke);
            }

            StartTimer();
        }
        // </InkPresenter_StrokeInputEnded>

        // <InkPresenter_StrokesCollected>
        private void InkPresenter_StrokesCollected(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesCollectedEventArgs args)
        {
            StopTimer();

            foreach (var stroke in args.Strokes)
            {
                var strokeId = strokeStore.AddStroke(stroke);
                strokeToIdMap.Add(stroke, strokeId);
                idToStrokeMap.Add(strokeId, stroke);
            }

            StartTimer();
        }
Beispiel #5
0
        private async void InkCanvas_StrokesChanged(Windows.UI.Input.Inking.InkPresenter sender, EventArgs args)
        {
            var strokes = sender.StrokeContainer.GetStrokes();

            if (strokes?.Count > 0)
            {
                HidePredictionUIElement();
                await ViewModel.UpdataPrediction(strokes);

                await Task.Delay(300);

                ShowPredictionUIElement();
            }
        }
Beispiel #6
0
        /// <summary>
        /// Run when user creates a new stroke on the ink canvas
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        private void InkPresenter_StrokesCollected(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesCollectedEventArgs args)
        {
            foreach (var stroke in args.Strokes)
            {
                foreach (var entity in entities.Where(x => !x.IsDead).ToList())
                {
                    // check if stroke is bounding entity centerpoint
                    if (stroke.BoundingRect.Contains(entity.CentralPoint))
                    {
                        // remove sprite
                        canvas.Children.Remove(entity.Sprite);
                        entity.IsDead = true;

                        // take penalty for killing pill
                        if (entity.GetType() == typeof(Pill))
                        {
                            remainingTime -= GameState.CurrentLevelDefinition.PillPenalty;
                        }
                        else
                        {
                            if (Settings.IsSound)
                            {
                                audioKill.Play();
                            }
                        }

                        break;
                    }
                }

                stroke.Selected = true;
            }

            inkCanvas.InkPresenter.StrokeContainer.DeleteSelected();

            // check winning rules
            if (BacteriaAlive() == 0)
            {
                timer.Stop();
                timer2.Stop();
                isNavigating = true;
                GameState.Win(remainingTime);
            }
        }
Beispiel #7
0
 private async void InkPresenter_StrokesCollected(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesCollectedEventArgs args)
 {
     _analyzer.AddDataForStrokes(args.Strokes);
     await Analyze();
 }
Beispiel #8
0
 private async void InkPresenter_StrokesErased(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesErasedEventArgs args)
 {
     _analyzer.RemoveDataForStrokes(args.Strokes.Select(x => x.Id));
     await Analyze();
 }
        private void InkPresenter_StrokesCollected(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesCollectedEventArgs args)
        {
            var strokes = args.Strokes.ToXInkStrokeList();

            Element.InkPresenter.TriggerStrokesCollected(strokes);
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="InkPresenter"/> class, a
 /// Wpf-enabled wrapper for <see cref="windows.UI.Input.Inking.InkPresenter"/>
 /// </summary>
 public InkPresenter(windows.UI.Input.Inking.InkPresenter instance)
 {
     this.UwpInstance = instance;
 }
 private void InkPresenter_StrokesCollected(Windows.UI.Input.Inking.InkPresenter sender, Windows.UI.Input.Inking.InkStrokesCollectedEventArgs args)
 {
     AdjustCanvasSize();
 }