Exemplo n.º 1
0
        private void canvasWall_MouseDown(object sender, MouseButtonEventArgs e)
        {
            Point         mousePoint        = e.GetPosition(sender as Canvas);
            RockViewModel nearestRockOnWall = rocksOnWallViewModel.GetRockInListByCanvasPoint(mousePoint);

            if (nearestRockOnWall != null)
            {
                rocksOnRouteViewModel.SelectedRockOnRoute =
                    rocksOnRouteViewModel.FindRockOnRouteViewModel(nearestRockOnWall);
                bool isRockAlreadyOnTheRoute = !rocksOnRouteViewModel.IsSelectedRockOnRouteNull();

                if (!isRockAlreadyOnTheRoute)  // new rock on route
                {
                    rocksOnRouteViewModel.SelectedRockOnRoute = new RockOnRouteViewModel
                    {
                        MyRockViewModel = nearestRockOnWall
                    };

                    rocksOnRouteViewModel.AddSelectedRockToRoute();

                    switch (routeSetClimbMode)
                    {
                    case ClimbMode.Training:
                        SetSelectedTrainingRockSeqNo(true);
                        break;

                    case ClimbMode.Boulder:
                    default:
                        SetSelectedBoulderRockToIntermediate();
                        break;
                    }
                }
            }
        }