diff --git a/PenaltyMaster3000/Helpers/VisibilityManager.cs b/PenaltyMaster3000/Helpers/VisibilityManager.cs index 892f90f..c16a4b1 100644 --- a/PenaltyMaster3000/Helpers/VisibilityManager.cs +++ b/PenaltyMaster3000/Helpers/VisibilityManager.cs @@ -30,6 +30,13 @@ namespace PenaltyMaster3000.Helpers set => SetProperty(ref goalTopRightVisibility, value); } + private Visibility questionPointTopRightVisibility; + public Visibility QuestionPointTopRightVisibility + { + get => questionPointTopRightVisibility; + set => SetProperty(ref questionPointTopRightVisibility, value); + } + // Top Left private Visibility ballTopLeftVisibility; public Visibility BallTopLeftVisibility @@ -44,6 +51,13 @@ namespace PenaltyMaster3000.Helpers get => goalTopLeftVisibility; set => SetProperty(ref goalTopLeftVisibility, value); } + + private Visibility questionPointTopLeftVisibility; + public Visibility QuestionPointTopLeftVisibility + { + get => questionPointTopLeftVisibility; + set => SetProperty(ref questionPointTopLeftVisibility, value); + } // --- // Middle @@ -61,6 +75,13 @@ namespace PenaltyMaster3000.Helpers set => SetProperty(ref goalTopMiddleVisibility, value); } + private Visibility questionPointTopMiddleVisibility; + public Visibility QuestionPointTopMiddleVisibility + { + get => questionPointTopMiddleVisibility; + set => SetProperty(ref questionPointTopMiddleVisibility, value); + } + // Down middle private Visibility ballDownMiddleVisibility; public Visibility BallDownMiddleVisibility @@ -75,6 +96,13 @@ namespace PenaltyMaster3000.Helpers get => goalDownMiddleVisibility; set => SetProperty(ref goalDownMiddleVisibility, value); } + + private Visibility questionPointDownMiddleVisibility; + public Visibility QuestionPointDownMiddleVisibility + { + get => questionPointDownMiddleVisibility; + set => SetProperty(ref questionPointDownMiddleVisibility, value); + } // --- // Down right @@ -92,6 +120,13 @@ namespace PenaltyMaster3000.Helpers set => SetProperty(ref goalDownRightVisibility, value); } + private Visibility questionPointDownRightVisibility; + public Visibility QuestionPointDownRightVisibility + { + get => questionPointDownRightVisibility; + set => SetProperty(ref questionPointDownRightVisibility, value); + } + // Down left private Visibility ballDownLeftVisibility; public Visibility BallDownLeftVisibility @@ -106,6 +141,13 @@ namespace PenaltyMaster3000.Helpers get => goalDownLeftVisibility; set => SetProperty(ref goalDownLeftVisibility, value); } + + private Visibility questionPointDownLeftVisibility; + public Visibility QuestionPointDownLeftVisibility + { + get => questionPointDownLeftVisibility; + set => SetProperty(ref questionPointDownLeftVisibility, value); + } /// --- @@ -144,6 +186,34 @@ namespace PenaltyMaster3000.Helpers return element1 == Visibility.Visible && element2 == Visibility.Visible; } + /// + /// Update the view with the question point position. + /// + /// + public void SetQuestionPoint(string gesturePosition) + { + switch (gesturePosition) + { + case "HandUpRight": + QuestionPointTopRightVisibility = Visibility.Visible; + break; + + case "HandUpLeft": + QuestionPointTopLeftVisibility = Visibility.Visible; + break; + + case "HandDownRight": + QuestionPointDownRightVisibility = Visibility.Visible; + break; + + case "HandDownLeft": + QuestionPointTopRightVisibility = Visibility.Visible; + break; + + default: return; + } + } + /// /// Update the view with the latest shot and defense. /// @@ -176,18 +246,22 @@ namespace PenaltyMaster3000.Helpers switch (shotPosition) { case "HandUpRight": + QuestionPointTopRightVisibility = Visibility.Hidden; BallTopRightVisibility = Visibility.Visible; break; case "HandUpLeft": + QuestionPointTopLeftVisibility = Visibility.Hidden; BallTopLeftVisibility = Visibility.Visible; break; case "HandDownRight": + QuestionPointDownRightVisibility = Visibility.Hidden; BallDownRightVisibility = Visibility.Visible; break; case "HandDownLeft": + QuestionPointTopRightVisibility = Visibility.Hidden; BallTopRightVisibility = Visibility.Visible; break; @@ -240,16 +314,22 @@ namespace PenaltyMaster3000.Helpers // Rest should be hidden BallTopRightVisibility = Visibility.Hidden; GoalTopRightVisibility = Visibility.Hidden; + QuestionPointTopRightVisibility = Visibility.Hidden; BallTopMiddleVisibility = Visibility.Hidden; GoalTopMiddleVisibility = Visibility.Hidden; + QuestionPointTopMiddleVisibility = Visibility.Hidden; BallTopLeftVisibility = Visibility.Hidden; GoalTopLeftVisibility = Visibility.Hidden; + QuestionPointTopLeftVisibility = Visibility.Hidden; BallDownRightVisibility = Visibility.Hidden; GoalDownRightVisibility = Visibility.Hidden; + QuestionPointDownRightVisibility = Visibility.Hidden; BallDownMiddleVisibility = Visibility.Hidden; GoalDownMiddleVisibility = Visibility.Hidden; + QuestionPointDownMiddleVisibility = Visibility.Hidden; BallDownLeftVisibility = Visibility.Hidden; GoalDownLeftVisibility = Visibility.Hidden; + QuestionPointDownLeftVisibility = Visibility.Hidden; } } } diff --git a/PenaltyMaster3000/Images/white_question_point.png b/PenaltyMaster3000/Images/white_question_point.png new file mode 100644 index 0000000..6a7c541 Binary files /dev/null and b/PenaltyMaster3000/Images/white_question_point.png differ diff --git a/PenaltyMaster3000/PenaltyMaster3000.csproj b/PenaltyMaster3000/PenaltyMaster3000.csproj index 8659834..696c215 100644 --- a/PenaltyMaster3000/PenaltyMaster3000.csproj +++ b/PenaltyMaster3000/PenaltyMaster3000.csproj @@ -169,6 +169,9 @@ MyGestureBank + + + diff --git a/PenaltyMaster3000/View/MainView.xaml b/PenaltyMaster3000/View/MainView.xaml index a6d4659..cc7737a 100644 --- a/PenaltyMaster3000/View/MainView.xaml +++ b/PenaltyMaster3000/View/MainView.xaml @@ -35,7 +35,14 @@ Grid.RowSpan="2" Grid.Column="0" Visibility="{Binding VsMgr.BallTopRightVisibility}"/> - + + - + + - + + + + - + + +