Esempio n. 1
0
 private void InputManagerMouseGestureRecognized(object sender, MouseGestureEventArgs e)
 {
     if (this.focusedControl != null)
     {
         this.focusedControl.InputInjector.InjectMouseGesture(e);
     }
 }
        /// <summary>
        /// 方向和笔序识别结果匹配和处理
        /// </summary>
        /// <param name="args"></param>
        void gesture_GestureMatchEvent(MouseGestureEventArgs args)
        {
            switch (args.Present)
            {
            case "spiralSummarization":
                if (startIndex == int.MinValue && endIndex == int.MinValue)
                {
                    //先清除原来的两个螺旋摘要
                    //_inkCollector._mainPage.VideoSummarizationControl.keyFrameListScrollViewer.Visibility = Visibility.Visible;
                    _inkCollector._mainPage.VideoSummarizationControl.SpiralSummarizationRight.hiddenSpiralSummarization();
                    _inkCollector._mainPage.VideoSummarizationControl.SpiralSummarizationBottom.hiddenSpiralSummarization();

                    _inkCollector._mainPage.VideoSummarizationControl.resetTableGrid();
                    _inkCollector._mainPage.VideoSummarizationControl.SpiralSummarizationLeft.InkCanvas.Margin = new Thickness(0, 0, 0, 0);
                    _inkCanvas.Strokes.Clear();
                    _inkCollector.VideoSummarization = _inkCollector._mainPage.VideoSummarizationControl.SpiralSummarizationLeft;
                    _inkCollector._mainPage.VideoSummarizationControl._timeBar.Visibility          = Visibility.Visible;
                    _inkCollector._mainPage.VideoSummarizationControl.VideoProgressText.Visibility = Visibility.Visible;
                    _inkCollector.Mode = InkMode.VideoSummarization;
                }
                break;

            default:
                //Console.WriteLine("default");

                break;
            }
        }
Esempio n. 3
0
 public void InjectMouseGesture(MouseGestureEventArgs e)
 {
     if (this.control.CanReactToInput)
     {
         this.OnMouseGesture(e);
     }
 }
Esempio n. 4
0
        /// <summary>
        /// 方向和笔序识别结果匹配和处理
        /// </summary>
        /// <param name="args"></param>
        void gesture_GestureMatchEvent(MouseGestureEventArgs args)
        {
            //记录操作事件与持续时间
            recordOperateEvent(args.Present);
            switch (args.Present)
            {
            case "generateSpiralSummarization":
                //生成新的螺旋摘要
                InkCanvas newSpiralInkCanvas = new InkCanvas();
                newSpiralInkCanvas.Width      = TableGrid.ActualWidth * 0.75;
                newSpiralInkCanvas.Height     = TableGrid.ActualHeight;
                newSpiralInkCanvas.Background = new SolidColorBrush(Colors.Transparent);
                newSpiralInkCanvas.Margin     = new Thickness(0, TableGrid.ActualHeight * 0.25, 0, 0);
                double spiralWidth = 0;
                spiralWidth = 54;
                MySpiral            mySpiral = new MySpiral(spiralWidth, GlobalValues.color, new StylusPoint((double)(int)(newSpiralInkCanvas.Width / 2), (double)(int)(newSpiralInkCanvas.Height / 2)), 3, 10, newSpiralInkCanvas, false);
                SpiralSummarization newSpiralSummarization = new SpiralSummarization(_inkCollector, mySpiral, selectKeyFrames, false);
                //SpiralSummarization newSpiralSummarization = new SpiralSummarization(mySpiral, _inkCollector.TileKeyFrames);
                _inkCanvas.Children.Add(newSpiralInkCanvas);
                _inkCollector.VideoSummarization = newSpiralSummarization;
                break;

            case "spiralSummarization":
                if (startIndex == int.MinValue && endIndex == int.MinValue)
                {
                    //先清除原来的两个螺旋摘要
                    _inkCollector._mainPage.VideoSummarizationControl.keyFrameListScrollViewer.Visibility = Visibility.Visible;
                    ((InkCanvas)_inkCanvas.Children[0]).Children.Clear();
                    ((InkCanvas)_inkCanvas.Children[0]).Strokes.Clear();
                    ((InkCanvas)_inkCanvas.Children[1]).Children.Clear();
                    ((InkCanvas)_inkCanvas.Children[1]).Strokes.Clear();
                    _inkCanvas.Children.RemoveAt(0);
                    _inkCanvas.Children.RemoveAt(0);
                    ((InkCanvas)_inkCanvas.Children[0]).Margin = new Thickness(0);
                    _inkCollector._mainPage.VideoSummarizationControl.resetTableGrid();
                    _inkCollector._mainPage.VideoSummarizationControl.keyFrameList._inkCanvas.Children.Clear();
                    _inkCollector._mainPage.VideoSummarizationControl.keyFrameList2._inkCanvas.Children.Clear();
                    _inkCollector._mainPage.VideoSummarizationControl.keyFrameListScrollViewer.Visibility  = Visibility.Collapsed;
                    _inkCollector._mainPage.VideoSummarizationControl.keyFrameListScrollViewer2.Visibility = Visibility.Collapsed;
                    _inkCollector._mainPage.VideoSummarizationControl.GridBtn.Visibility           = Visibility.Visible;
                    _inkCollector._mainPage.VideoSummarizationControl._timeBar.Visibility          = Visibility.Visible;
                    _inkCollector._mainPage.VideoSummarizationControl.VideoProgressText.Visibility = Visibility.Visible;
                    _inkCollector._mainPage.VideoSummarizationControl.BtnMerge.Visibility          = Visibility.Collapsed;
                    _inkCollector.Mode = InkMode.VideoSummarization;
                }
                break;

            default:
                //Console.WriteLine("default");

                break;
            }
        }
Esempio n. 5
0
        private void FireMouseGestureEvent()
        {
            if (this.mouseGestures != null && this.mouseGestures.Count > 0)
            {
                var e = new MouseGestureEventArgs(this.mouseGestures, this.mouseGesturesLocations, this.mouseGestureEndLocation);

                if (this.MouseGestureRecognized != null)
                {
                    this.MouseGestureRecognized(this, e);
                }
            }
        }
        /// <summary>
        /// Add the specified event to the history
        /// </summary>
        /// <param name="eventArgs">The <see cref="MouseGestureEventArgs"/></param>
        private void AddEventToHistory(MouseGestureEventArgs eventArgs)
        {
            if (HistoryLimit == 0)
            {
                return;
            }

            Requires.NotNull(eventArgs, nameof(eventArgs));

            if (MouseGestureEventsHistory.Count >= HistoryLimit && MouseGestureEventsHistory.Count > 0)
            {
                MouseGestureEventsHistory.RemoveAt(MouseGestureEventsHistory.Count - 1);
            }

            MouseGestureEventsHistory.Insert(0, eventArgs);
        }
        private void OnMouseAction(object sender, MouseHookEventArgs e)
        {
            MouseAction?.Invoke(this, e);

            if (e.Handled)
            {
                return;
            }

            if ((e.Action == Enums.MouseAction.LeftButtonPressed && GestureActionButton == MouseButtons.LeftMouseButton) || (e.Action == Enums.MouseAction.RightButtonPressed && GestureActionButton == MouseButtons.RightMouseButton))
            {
                // If left button is pressed, start work
                IsGestureMaking = true;
            }
            else if ((e.Action == Enums.MouseAction.LeftButtonReleased && GestureActionButton == MouseButtons.LeftMouseButton) || e.Action == Enums.MouseAction.RightButtonReleased && GestureActionButton == MouseButtons.RightMouseButton)
            {
                // If left button is released, stop work
                IsGestureMaking = false;

                if (_mousePointsList.Count > 2)
                {
                    // Get gesture that was doing
                    var gesture = DetectGesture();
                    if (!string.Equals(gesture.Name, "-1", StringComparison.Ordinal) && gesture.CheckPoinstArray != null)
                    {
                        var eventArgs = new MouseGestureEventArgs(gesture.Name, gesture.CheckPoinstArray, DateTime.Now.Ticks);

                        AddEventToHistory(eventArgs);

                        e.Handled = true;
                        Logger.Instance.Information($"Mouse gesture detected by {nameof(MouseAndKeyboardHookService)}.");
                        MouseGestureDetected?.Invoke(this, eventArgs);
                    }
                }

                _mousePointsList.Clear();
            }
            else if (e.Action == Enums.MouseAction.MouseMove)
            {
                // If the mouse is moved, add point to coords list
                if (IsGestureMaking)
                {
                    _mousePointsList.Add(e.Coords);
                }
            }
        }
Esempio n. 8
0
        private void mouseGesturesTest_Gesture(object sender, MouseGestureEventArgs e)
        {
            try
            {
                System.Diagnostics.Process process = new System.Diagnostics.Process();
                process.StartInfo.FileName = GestureConfiguration.Instance.ResolveCommand(e.Gesture);
                process.Start();
            }
            catch (Exception) {
                // No hay comando configurado para el gesto detectado
            }
            foreach (PictureBox pb in mouseGestureDisplay)
            {
                if ((MouseGesture)pb.Tag == e.Gesture)
                {
                    //load image from the resources
                    pb.Image = new Bitmap(Assembly.GetExecutingAssembly().GetManifestResourceStream(
                                              getResourceName(e.Gesture, true)));
//                    timerReset.Start();
                    return;
                }
            }
        }
Esempio n. 9
0
 private void gesturehandler_OnMouseGestureToTopOrBottom(object sender, MouseGestureEventArgs e)
 {
     ChartZoomHelper.SetChartMouseMoveTopOrBottom(this.chartView, e.Delta);
 }
Esempio n. 10
0
 private void gesturehandler_OnMouseGestureToLeftOrRight(object sender, MouseGestureEventArgs e)
 {
     ChartZoomHelper.SetChartMouseMoveLeftOrRight(this.chartView, e.Delta);
 }
        private void mouseGesturesTest_Gesture(object sender, MouseGestureEventArgs e)
        {
            foreach (PictureBox pb in mouseGestureDisplay)
            {
                if (( string )pb.Tag == e.Gesture.ToString())
                {
                    //load image from the resources
                    pb.Image = new Bitmap(Assembly.GetExecutingAssembly().GetManifestResourceStream(
                                              getResourceName(e.Gesture.Motions, true)));
                    timerReset.Start();
                    string move = (string)pb.Tag;
                    switch (move)
                    {
                    case "U":
                        Process.Start("https://www.google.co.in/search?rlz=1C1CHBF_enIN725IN725&q=weather&oq=weather&gs_l=serp.3..0i67k1l10.30821.32822.0.35836.7.7.0.0.0.0.374.1235.0j5j1j1.7.0....0...1.1.64.serp..0.7.1231...0j0i131k1.45U3X1pvxY0");
                        break;

                    case "D":
                        Process.Start("C:/Program Files/Android/Android Studio/bin/studio64.exe");
                        break;

                    case "RDR":
                        Process.Start("https://www.zomato.com/india");
                        break;

                    case "R":
                        Process.Start("C:/Program Files (x86)/Git/cmd/git-gui.exe");
                        break;

                    case "L":
                        Process.Start("wmplayer.exe");
                        break;

                    case "UDU":
                        Process.Start("C:/Program Files (x86)/Notepad++/notepad++.exe");
                        break;

                    case "UDUD":
                        Process.Start("C:/Program Files (x86)/Mission Planner/MissionPlanner.exe");
                        break;

                    case "DUDU":
                        Process.Start("C:/Program Files/Windows NT/Accessories/wordpad.exe");
                        break;

                    case "DU":
                        Process.Start("C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/Common7/IDE/devenv.exe");
                        break;

                    case "URDL":
                        Process.Start("mspaint.exe");
                        break;

                    case "UR":
                        Process.Start("control.exe");
                        break;

                    case "UL":
                        Process.Start("https://mail.google.com/");
                        break;

                    case "RU":
                        Process.Start("https://www.youtube.com/");
                        break;

                    case "LU":
                        Process.Start("https://auth.udacity.com/sign-in?next=https%3A%2F%2Fclassroom.udacity.com%2Fauthenticated");
                        break;

                    case "RD":
                        Process.Start("https://github.com/sheetal1996");
                        break;

                    case "LD":
                        Process.Start("explorer.exe");
                        break;

                    case "DR":
                        Process.Start("https://in.linkedin.com/");
                        break;

                    case "DL":
                        Process.Start("calc.exe");
                        break;

                    default:
                        break;
                    }

                    return;
                }
            }
        }
Esempio n. 12
0
        /// <summary>
        /// 方向和笔序识别结果匹配和处理
        /// </summary>
        /// <param name="args"></param>
        void gesture_GestureMatchEvent(MouseGestureEventArgs args)
        {
            //记录操作事件与持续时间
            recordOperateEvent(args.Present);
            switch (args.Present)
            {
            case "keyFrameAnnotation":
                //if (startIndex != int.MinValue && startIndex == endIndex && _inkCollector.IsShowUnbrokenKeyFrame&&_inkCollector.DefaultSummarizationNum==0)
                //{
                //    if (_keyFrameAnnotation != null)
                //    {
                //        _inkCollector._mainPage.LayoutRoot.Children.Remove(_keyFrameAnnotation);
                //        _keyFrameAnnotation = null;
                //    }
                //    _keyFrameAnnotation = new KeyFrameAnnotation();
                //    KeyFrame selectKeyFrame = videoSummarization.ShowKeyFrames[startIndex];
                //    _inkCollector.SelectKeyFrames.Add(videoSummarization.ShowKeyFrames[startIndex]);
                //    Dictionary<Stroke, KeyFramesAnnotation> s = selectKeyFrame.Annotations;
                //    //在已经有注释的情况下显示已有的注释
                //    if (selectKeyFrame.Annotations.Count > 0)
                //    {
                //        KeyValuePair<Stroke, KeyFramesAnnotation> currPair = (from KeyValuePair<Stroke, KeyFramesAnnotation> anno in selectKeyFrame.Annotations
                //                                                              //where anno.Value == _keyFramesAnnotation
                //                                                              select anno).First();
                //        keyFramesAnnotation = (KeyFramesAnnotation)(currPair.Value);
                //        foreach (int index in keyFramesAnnotation.relatedKeyFrameIndexes)
                //        {
                //            currPair = (from KeyValuePair<Stroke, KeyFramesAnnotation> anno in videoSummarization.ShowKeyFrames[index].Annotations
                //                        where anno.Value == keyFramesAnnotation
                //                        select anno).First();
                //            Stroke stroke = (Stroke)(currPair.Key);
                //            _inkCanvas.Strokes.Add(stroke);
                //        }
                //        _keyFrameAnnotation.InkCanvasAnnotation.Strokes.Add(keyFramesAnnotation.Strokes);
                //    }
                //    else
                //    {
                //        keyFramesAnnotation = new KeyFramesAnnotation();
                //        VideoSummarizationControl._keyframeControlPanel.setInkFrame(_keyFrameAnnotation._inkFrame);
                //    }
                //    _inkCollector.KeyFramesAnnotation = keyFramesAnnotation;
                //    _inkCollector.KeyFrameAnnotation = _keyFrameAnnotation;
                //    _keyFrameAnnotation.setInkCollector(_inkCollector);
                //    _keyFrameAnnotation.setKeyFramesAnnotation(keyFramesAnnotation,true);
                //    //显示关键帧注释
                //    _keyFrameAnnotation.Width = keyFramesAnnotation.Width;
                //    _keyFrameAnnotation.Height = keyFramesAnnotation.Height;
                //    _keyFrameAnnotation.VerticalAlignment = VerticalAlignment.Top;
                //    Stroke linkLine;
                //    VideoSummarizationControl._keyframeControlPanel.setInkFrame(_keyFrameAnnotation._inkFrame);
                //    VideoSummarizationControl._keyframeControlPanel.Visibility = Visibility.Visible;
                //    if (videoSummarization.ShowKeyFrameCenterPoints[startIndex].X < videoSummarization.Center.X)
                //    {
                //        _keyFrameAnnotation.HorizontalAlignment = HorizontalAlignment.Left;
                //        //_keyFrameAnnotation._controlPanel.Margin = new Thickness(VideoSummarizationControl.TableGrid.ActualWidth * 0.75 - _keyFrameAnnotation._controlPanel.Width, 0, 0, 0);
                //        VideoSummarizationControl._keyframeControlPanel.HorizontalAlignment = HorizontalAlignment.Right;
                //        if (selectKeyFrame.Annotations.Count == 0)
                //        {//画关键帧到注释框的连线
                //            linkLine = InkTool.getInstance().DrawLine(videoSummarization.ShowKeyFrameCenterPoints[startIndex].X + inkCanvasSpiralSummarizationMargin.Left,
                //                videoSummarization.ShowKeyFrameCenterPoints[startIndex].Y + inkCanvasSpiralSummarizationMargin.Top,
                //                _keyFrameAnnotation.Margin.Left + _keyFrameAnnotation.Width / 2,
                //                _keyFrameAnnotation.Margin.Top + _keyFrameAnnotation.Height / 2,
                //                _inkCanvas, Color.FromArgb(180, 0, 255, 0));
                //            selectKeyFrame.Annotations.Add(linkLine, keyFramesAnnotation);
                //            keyFramesAnnotation.relatedKeyFrameIndexes.Add(startIndex);
                //            MoveTimer.Stop();
                //        }
                //    }
                //    else
                //    {
                //        _keyFrameAnnotation.HorizontalAlignment = HorizontalAlignment.Right;
                //        VideoSummarizationControl._keyframeControlPanel.HorizontalAlignment = HorizontalAlignment.Left;
                //        if (selectKeyFrame.Annotations.Count == 0)
                //        {
                //            linkLine = InkTool.getInstance().DrawLine(videoSummarization.ShowKeyFrameCenterPoints[startIndex].X + inkCanvasSpiralSummarizationMargin.Left,
                //                videoSummarization.ShowKeyFrameCenterPoints[startIndex].Y + inkCanvasSpiralSummarizationMargin.Top,
                //                _inkCanvas.ActualWidth - _keyFrameAnnotation.Width / 2,
                //                _keyFrameAnnotation.Margin.Top + _keyFrameAnnotation.Height / 2,
                //                _inkCanvas, Color.FromArgb(180, 0, 255, 0));
                //            selectKeyFrame.Annotations.Add(linkLine, keyFramesAnnotation);
                //            keyFramesAnnotation.relatedKeyFrameIndexes.Add(startIndex);
                //            MoveTimer.Stop();
                //        }
                //    }
                //    _keyFrameAnnotation.Visibility = Visibility.Visible;
                //    _inkCollector._mainPage.LayoutRoot.Children.Add(_keyFrameAnnotation);
                //    moveTimerSecond = 0;
                //    _inkCollector.Mode = InkMode.AddKeyFrameAnnotation;
                //}
                //else
                //{
                //    //VideoSummarizationControl.TableGrid.ColumnDefinitions[0].Width = new GridLength(VideoSummarizationControl.TableGrid.ActualWidth * 0.25);
                //    //((InkCanvas)_inkCanvas.Children[0]).Margin = new Thickness(0);

                //}
                break;

            case "SpiralFullScreen":
                //VideoSummarizationControl.TableGrid.ColumnDefinitions[0].Width = new GridLength(0);
                //((InkCanvas)_inkCanvas.Children[0]).Margin = new Thickness(VideoSummarizationControl.TableGrid.ActualWidth * 0.125,0,0,0);
                break;

            default:
                //Console.WriteLine("default");
                break;
            }
        }
        /// <summary>
        /// 方向和笔序识别结果匹配和处理
        /// </summary>
        /// <param name="args"></param>
        void gesture_GestureMatchEvent(MouseGestureEventArgs args)
        {
            //记录操作事件与持续时间
            recordOperateEvent(args.Present);
            switch (args.Present)
            {
            case "keyFrameAnnotation":
                if (startIndex != int.MinValue && startIndex == endIndex && _inkCollector.IsShowUnbrokenKeyFrame)
                {
                    _keyFrameAnnotation = new KeyFrameAnnotation();
                    KeyFrame selectKeyFrame = videoSummarization.ShowKeyFrames[startIndex];
                    _inkCollector.SelectKeyFrames.Add(videoSummarization.ShowKeyFrames[startIndex]);
                    Dictionary <Stroke, KeyFramesAnnotation> s = selectKeyFrame.Annotations;
                    //在已经有注释的情况下显示已有的注释
                    if (selectKeyFrame.Annotations.Count > 0)
                    {
                        KeyValuePair <Stroke, KeyFramesAnnotation> currPair = (from KeyValuePair <Stroke, KeyFramesAnnotation> anno in selectKeyFrame.Annotations
                                                                               //where anno.Value == _keyFramesAnnotation
                                                                               select anno).First();
                        keyFramesAnnotation = (KeyFramesAnnotation)(currPair.Value);
                        foreach (int index in keyFramesAnnotation.relatedKeyFrameIndexes)
                        {
                            currPair = (from KeyValuePair <Stroke, KeyFramesAnnotation> anno in videoSummarization.ShowKeyFrames[index].Annotations
                                        where anno.Value == keyFramesAnnotation
                                        select anno).First();
                            Stroke stroke = (Stroke)(currPair.Key);
                            _inkCanvas.Strokes.Add(stroke);
                        }
                        _keyFrameAnnotation.InkCanvasAnnotation.Strokes.Add(keyFramesAnnotation.Strokes);
                    }
                    else
                    {
                        keyFramesAnnotation = new KeyFramesAnnotation();
                    }
                    _inkCollector.KeyFramesAnnotation = keyFramesAnnotation;
                    _inkCollector.KeyFrameAnnotation  = _keyFrameAnnotation;
                    _keyFrameAnnotation.setInkCollector(_inkCollector);
                    _keyFrameAnnotation.setKeyFramesAnnotation(keyFramesAnnotation, true);
                    //显示关键帧注释
                    _keyFrameAnnotation.Width             = keyFramesAnnotation.Width;
                    _keyFrameAnnotation.Height            = keyFramesAnnotation.Height;
                    _keyFrameAnnotation.VerticalAlignment = VerticalAlignment.Top;
                    Stroke linkLine;
                    if (videoSummarization.ShowKeyFrameCenterPoints[startIndex].X < videoSummarization.Center.X)
                    {
                        _keyFrameAnnotation.HorizontalAlignment = HorizontalAlignment.Left;
                        if (selectKeyFrame.Annotations.Count == 0)
                        {    //画关键帧到注释框的连线
                            linkLine = InkTool.getInstance().DrawLine(videoSummarization.ShowKeyFrameCenterPoints[startIndex].X + inkCanvasSpiralSummarizationMargin.Left,
                                                                      videoSummarization.ShowKeyFrameCenterPoints[startIndex].Y + inkCanvasSpiralSummarizationMargin.Top,
                                                                      _keyFrameAnnotation.Margin.Left + _keyFrameAnnotation.Width / 2,
                                                                      _keyFrameAnnotation.Margin.Top + _keyFrameAnnotation.Height / 2,
                                                                      _inkCanvas, Color.FromArgb(180, 0, 255, 0));
                            selectKeyFrame.Annotations.Add(linkLine, keyFramesAnnotation);
                            keyFramesAnnotation.relatedKeyFrameIndexes.Add(startIndex);
                            MoveTimer.Stop();
                        }
                    }
                    else
                    {
                        _keyFrameAnnotation.HorizontalAlignment = HorizontalAlignment.Right;
                        if (selectKeyFrame.Annotations.Count == 0)
                        {
                            linkLine = InkTool.getInstance().DrawLine(videoSummarization.ShowKeyFrameCenterPoints[startIndex].X + inkCanvasSpiralSummarizationMargin.Left,
                                                                      videoSummarization.ShowKeyFrameCenterPoints[startIndex].Y + inkCanvasSpiralSummarizationMargin.Top,
                                                                      _inkCanvas.ActualWidth - _keyFrameAnnotation.Width / 2,
                                                                      _keyFrameAnnotation.Margin.Top + _keyFrameAnnotation.Height / 2,
                                                                      _inkCanvas, Color.FromArgb(180, 0, 255, 0));
                            selectKeyFrame.Annotations.Add(linkLine, keyFramesAnnotation);
                            keyFramesAnnotation.relatedKeyFrameIndexes.Add(startIndex);
                            MoveTimer.Stop();
                        }
                    }
                    _keyFrameAnnotation.Visibility = Visibility.Visible;
                    _inkCollector._mainPage.LayoutRoot.Children.Add(_keyFrameAnnotation);
                    _inkCollector.Mode = InkMode.AddKeyFrameAnnotation;
                }
                else
                {
                    //VideoSummarizationControl.TableGrid.ColumnDefinitions[0].Width = new GridLength(VideoSummarizationControl.TableGrid.ActualWidth * 0.25);
                }
                break;

            case "SpiralFullScreen":
                //VideoSummarizationControl.TableGrid.ColumnDefinitions[0].Width = new GridLength(0);
                break;

            default:
                //Console.WriteLine("default");
                break;
            }
        }