상속: ButtonBaseAutomationPeer, IButtonAutomationPeer, IInvokeProvider
예제 #1
0
 private void FilterTextBox_OnKeyUp(object sender, KeyRoutedEventArgs eventArgs)
 {
     if (eventArgs.Key == VirtualKey.Escape)
     {
         var buttonAutomationPeer = new ButtonAutomationPeer(DoneButton);
         buttonAutomationPeer.Invoke();
     }
 }
예제 #2
0
        public void Click()
        {
            // Arrange
            var mock = new Mock();
            var button = new Button();
            button.DataContext = mock;

            ButtonHelper.SetMethodName(button, "DoStuff");

            // Act
            var peer = new ButtonAutomationPeer(button);
            var invokeProvider = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
            invokeProvider.Invoke();

            // Assert
            Microsoft.VisualStudio.TestPlatform.UnitTestFramework.Assert.IsTrue(mock.WasButtonClicked);
        }
        private void InvokeCommand(Button button)
        {
            try
            {
                ButtonAutomationPeer peer = new ButtonAutomationPeer(button);
                IInvokeProvider invokeProv = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
                invokeProv.Invoke();

                //To get UI to flash update
                Task.Factory.StartFromCurrentUIContext(async () =>
                {
                    VisualStateManager.GoToState(button, "Pressed", true);
                    await Task.Delay(75);
                    VisualStateManager.GoToState(button, "Normal", true);
                });
            }
            catch { }
        }
예제 #4
0
        public void Click_WithButtonAndStringParameter()
        {
            // Arrange
            var mock = new Mock();
            var button = new Button();
            button.DataContext = mock;

            var expectedParameter = Guid.NewGuid().ToString();

            ButtonHelper.SetMethodName(button, "DoStuffWithButtonAndStringParameter");
            ButtonHelper.SetParameter(button, expectedParameter);

            // Act
            var peer = new ButtonAutomationPeer(button);
            var invokeProvider = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
            invokeProvider.Invoke();

            // Assert
            Microsoft.VisualStudio.TestPlatform.UnitTestFramework.Assert.AreSame(button, mock.ButtonParameter, "Button Parameter");
            Microsoft.VisualStudio.TestPlatform.UnitTestFramework.Assert.AreEqual(expectedParameter, mock.Parameter, "Parameter");
        }
 /// <summary>
 /// Process key presses for the input textbox
 /// </summary>
 static void textboxInput_KeyDown(object sender, Windows.UI.Xaml.Input.KeyRoutedEventArgs e)
 {
     // Did the user press a significant control key?
     switch (e.Key)
     {
         case Windows.System.VirtualKey.Enter:
             // Simulate clicking the OK button
             e.Handled = true;
             ButtonAutomationPeer peer = new ButtonAutomationPeer(_buttonOK);
             IInvokeProvider invokeProv = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
             invokeProv.Invoke();
             break;
         case Windows.System.VirtualKey.Escape:
             // Simulate clicking the Cancel button
             e.Handled = true;
             peer = new ButtonAutomationPeer(_buttonCancel);
             invokeProv = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
             invokeProv.Invoke();
             break;
     }
 }
        void automaticRedoWaitTimer_Tick(object sender, object e)
        {
            if (automaticRedoDateTime.Second == 0)
            {
                automaticRedoWaitTimer.Stop();
                automaticRedoWaitTimer.Tick -= automaticRedoWaitTimer_Tick;

                ButtonAutomationPeer peer = new ButtonAutomationPeer(btnGoRect);
                peer.Invoke();
            }
            else
            {
                automaticRedoDateTime = automaticRedoDateTime.AddSeconds(-1);
            }
        }
        private void btn_allUppercaseLetter_Click(object sender, RoutedEventArgs e)
        {
            if (allUpperLettersIsOn)
            {
                allUpperLettersIsOn = false;
                btn_allUppercaseLetter.Foreground = new SolidColorBrush(Colors.White);
                btn_allUppercaseLetter.Background = new SolidColorBrush(Colors.Gray);
                for (int i = 0; i < 26; i++)
                {
                    ButtonAutomationPeer peer = new ButtonAutomationPeer(letterButtons[i]);
                    peer.Invoke();
                }
            }
            else
            {
                for (int i = 0; i < 26; i++)
                {
                    theLetterIsOn[i] = true;
                    letterButtons[i].Foreground = new SolidColorBrush(Colors.Yellow);
                    letterButtons[i].Background = new SolidColorBrush(Colors.Brown);
                }

                allUpperLettersIsOn = true;
                btn_allUppercaseLetter.Foreground = new SolidColorBrush(Colors.Yellow);
                btn_allUppercaseLetter.Background = new SolidColorBrush(Colors.Brown);

            }

            int numberOfLowerOn = 0;
            int numberOfUpperOn = 0;

            for (int b = 0; b < 26; b++)
            {
                if (theLetterIsOn[b] == true)
                {
                    numberOfLowerOn++;
                }
            }

            for (int c = 26; c < 52; c++)
            {
                if (theLetterIsOn[c] == true)
                {
                    numberOfUpperOn++;
                }
            }

            numberOfLettersSelected = numberOfLowerOn + numberOfUpperOn;

            if ((numberOfLowerOn == 0 && numberOfUpperOn == 0) || (numberOfLowerOn == 0 && numberOfUpperOn == 26) || (numberOfLowerOn == 26 && numberOfUpperOn == 0) || (numberOfLowerOn == 26 && numberOfUpperOn == 26))
            {
                tbk_selectiveLettersONOff.Text = "OFF";
                tbk_selectiveLettersONOff.Foreground = new SolidColorBrush(Colors.White);

            }
            else
            {
                tbk_selectiveLettersONOff.Text = "ON";
                tbk_selectiveLettersONOff.Foreground = new SolidColorBrush(Colors.LawnGreen);

            }
        }
        string[] units; //array holds everything, ready to be displayed from foreach loop in string type

        #endregion Fields

        #region Constructors

        public NumbersLettersSymbols()
        {
            this.InitializeComponent();

            #region letters
            for (int i = 0; i < 52; i++)
            {
                theLetterIsOn[i] = false;
            }

            letterButtons[0] = btnLetterA;
            letterButtons[1] = btnLetterB;
            letterButtons[2] = btnLetterC;
            letterButtons[3] = btnLetterD;
            letterButtons[4] = btnLetterE;
            letterButtons[5] = btnLetterF;
            letterButtons[6] = btnLetterG;
            letterButtons[7] = btnLetterH;
            letterButtons[8] = btnLetterI;
            letterButtons[9] = btnLetterJ;

            letterButtons[10] = btnLetterK;
            letterButtons[11] = btnLetterL;
            letterButtons[12] = btnLetterM;
            letterButtons[13] = btnLetterN;
            letterButtons[14] = btnLetterO;
            letterButtons[15] = btnLetterP;
            letterButtons[16] = btnLetterQ;
            letterButtons[17] = btnLetterR;
            letterButtons[18] = btnLetterS;
            letterButtons[19] = btnLetterT;

            letterButtons[20] = btnLetterU;
            letterButtons[21] = btnLetterV;
            letterButtons[22] = btnLetterW;
            letterButtons[23] = btnLetterX;
            letterButtons[24] = btnLetterY;
            letterButtons[25] = btnLetterZ;
            letterButtons[26] = btnLettera;
            letterButtons[27] = btnLetterb;
            letterButtons[28] = btnLetterc;
            letterButtons[29] = btnLetterd;

            letterButtons[30] = btnLettere;
            letterButtons[31] = btnLetterf;
            letterButtons[32] = btnLetterg;
            letterButtons[33] = btnLetterh;
            letterButtons[34] = btnLetteri;
            letterButtons[35] = btnLetterj;
            letterButtons[36] = btnLetterk;
            letterButtons[37] = btnLetterl;
            letterButtons[38] = btnLetterm;
            letterButtons[39] = btnLettern;

            letterButtons[40] = btnLettero;
            letterButtons[41] = btnLetterp;
            letterButtons[42] = btnLetterq;
            letterButtons[43] = btnLetterr;
            letterButtons[44] = btnLetters;
            letterButtons[45] = btnLettert;
            letterButtons[46] = btnLetteru;
            letterButtons[47] = btnLetterv;
            letterButtons[48] = btnLetterw;
            letterButtons[49] = btnLetterx;

            letterButtons[50] = btnLettery;
            letterButtons[51] = btnLetterz;

            #endregion

            #region symbols

            for (int i = 0; i < 10; i++)
            {
                theSymbolIsOn[i] = false;
            }

            symbolButtons[0] = btnSymbol1;
            symbolButtons[1] = btnSymbol2;
            symbolButtons[2] = btnSymbol3;
            symbolButtons[3] = btnSymbol4;
            symbolButtons[4] = btnSymbol5;
            symbolButtons[5] = btnSymbol6;
            symbolButtons[6] = btnSymbol7;
            symbolButtons[7] = btnSymbol8;
            symbolButtons[8] = btnSymbol9;
            symbolButtons[9] = btnSymbol10;

            #endregion

            ButtonAutomationPeer peer1 = new ButtonAutomationPeer(btn_allUppercaseLetter);
            ButtonAutomationPeer peer11 = new ButtonAutomationPeer(btnSymbol1);
            ButtonAutomationPeer peer12 = new ButtonAutomationPeer(btnSymbol2);
            ButtonAutomationPeer peer13 = new ButtonAutomationPeer(btnSymbol3);
            ButtonAutomationPeer peer14 = new ButtonAutomationPeer(btnSymbol4);
            ButtonAutomationPeer peer15 = new ButtonAutomationPeer(btnSymbol5);
            ButtonAutomationPeer peer16 = new ButtonAutomationPeer(btnSymbol6);
            ButtonAutomationPeer peer17 = new ButtonAutomationPeer(btnSymbol7);
            ButtonAutomationPeer peer18 = new ButtonAutomationPeer(btnSymbol8);
            ButtonAutomationPeer peer19 = new ButtonAutomationPeer(btnSymbol9);
            ButtonAutomationPeer peer20 = new ButtonAutomationPeer(btnSymbol10);

            peer1.Invoke();
            peer11.Invoke();
            peer12.Invoke();
            peer13.Invoke();
            peer14.Invoke();
            peer15.Invoke();
            peer16.Invoke();
            peer17.Invoke();
            peer18.Invoke();
            peer19.Invoke();
            peer20.Invoke();

            automaticRedoWaitTimer.Interval = TimeSpan.FromSeconds(1);

            mostfontsizeTimer.Interval = TimeSpan.FromMilliseconds(20);
            mostfontsizeTimer.Tick += fontsizeTimer_Tick;
            mostfontsizeTimer.Start();
        }
예제 #9
0
 public void PeerCheckBoxClick()
 {
     ButtonAutomationPeer peer = new ButtonAutomationPeer(Next);
     IInvokeProvider invokeProv = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
     invokeProv.Invoke();
 }
예제 #10
0
 /// <summary>
 /// 
 /// </summary>
 public async void ConditionalBackwardReport()
 {
     if (page >= 0)
     {
         if (reportListIndex.IndexOf(selectedNumber) - 1 >= 0)
         {
             await ShowReportPopup((reportObjectList[reportListIndex.IndexOf(selectedNumber) - 1].ReportId).ToString(), false);
         }
         else if (reportListIndex.IndexOf(selectedNumber) - 1 < 0)
         {
             if (Previous.Visibility == Visibility.Visible)
             {
                 ButtonAutomationPeer peer = new ButtonAutomationPeer(Previous);
                 peer.Invoke();
                 ReportPopupProgressBar.Visibility = Visibility.Visible;
                 await Task.Delay(5000);
                 await ShowReportPopup((reportObjectList[reportObjectList.Count - 1].ReportId).ToString(), false);
                 ReportPopupProgressBar.Visibility = Visibility.Collapsed;
             }
             else
             {
                 NotifyUser("BEGINNING OF REPORTS", SIUC311.NotifyType.QueueMessage);
             }
         }
     }
 }
예제 #11
0
 /// <summary>
 /// 
 /// </summary>
 public async void ConditionalForwardReport()
 {
     if (page <= lastPage)
     {
         if (reportListIndex.IndexOf(selectedNumber) + 1 < reportListIndex.Count)
         {
             await ShowReportPopup((reportObjectList[reportListIndex.IndexOf(selectedNumber) + 1].ReportId).ToString(), false);
         }
         else
         {
             if (Next.Visibility == Visibility.Visible)
             {
                 ButtonAutomationPeer peer = new ButtonAutomationPeer(Next);
                 peer.Invoke();
                 ReportPopupProgressBar.Visibility = Visibility.Visible;
                 await Task.Delay(1000);
                 await ShowReportPopup((reportObjectList[0].ReportId).ToString(), false);
                 ReportPopupProgressBar.Visibility = Visibility.Collapsed;
             }
             else
             {
                 NotifyUser("END OF REPORTS", SIUC311.NotifyType.QueueMessage);
             }
         }
     }
 }
예제 #12
0
        //Set up AI
        private void computerTurn()
        {
            // My Priority Logic

            // Priority 1: Get Tic Tac Toe
            // Priority 2: Block Tic Tac Toe
            // Priority 3: Corner Space
            // Priority 4: Open Space

            Button move = null;

            //Try Tic Tac Toe
            move = winOrBlockTry("O");
            if (move == null)
            {
                move = winOrBlockTry("X");
                if (move == null)
                {
                    move = cornertry();
                    if (move == null)
                    {
                        move = openSpaceTry();
                    }//end if
                }// end if
            }// end if

           // move.Tag = move.GetType();
           // string play = move.Tag.ToString();

            if (thereIsAWinner == false)
            {
                if (move == null)
                { }
                else
                {
                    ButtonAutomationPeer peer =
               new ButtonAutomationPeer(move);
                    IInvokeProvider invokeProv =
                      peer.GetPattern(PatternInterface.Invoke)
                      as IInvokeProvider;
                    invokeProv.Invoke();
                }
            }

            else
            {
               
            }


        }
예제 #13
0
 public ToolBarButton()
 {
     this.DefaultStyleKey = typeof(ToolBarButton);
     this.peer = new ButtonAutomationPeer(this);
     new PropertyChangeEventSource<object>(this, "Content").ValueChanged += (s, e) => this.UpdateToolTip();
 } 
예제 #14
0
        private void btnAnswer_Click(object sender, RoutedEventArgs e)
        {
            tbkNumberOfCardsRemaining.Opacity = 0;
            btnAnswer.Visibility = Windows.UI.Xaml.Visibility.Collapsed;

            if (captionOn)
            {
                tbkAnalysis.Opacity = 1;
            }
            else
            {
                tbkAnalysis.Opacity = 0;
            }
            if (numberOfWrongAnswer == 2)
            {
                int indexToPlaceUserScore = -1;
                int[] secondArrayToMakeLifeEasier = new int[5];

                Array.Copy(highScores, secondArrayToMakeLifeEasier, 5);

                //find where to place the score
                for (int i = 0; i < 5; i++)
                {
                    if (initialNumberOfCards - 1 > highScores[i])
                    {
                        indexToPlaceUserScore = i;
                        break;
                    }
                }

                if (indexToPlaceUserScore != -1)
                {
                    secondArrayToMakeLifeEasier[indexToPlaceUserScore] = (initialNumberOfCards - 1);

                    //secondArrayToMakeLifeEasier contains new highscores
                    for (int j = indexToPlaceUserScore + 1; j < 5; j++)
                    {
                        secondArrayToMakeLifeEasier[j] = highScores[j - 1];
                    }

                    //we now provide highScores with the values in secondArrayToMakeLifeEasier
                    for (int k = 0; k < 5; k++)
                    {
                        highScores[k] = secondArrayToMakeLifeEasier[k];
                    }
                }
               //we now store the values in highScores into our app data
                applicationDataContainer.Values["HighScore1_Card"] = highScores[0];
                applicationDataContainer.Values["HighScore2_Card"] = highScores[1];
                applicationDataContainer.Values["HighScore3_Card"] = highScores[2];
                applicationDataContainer.Values["HighScore4_Card"] = highScores[3];
                applicationDataContainer.Values["HighScore5_Card"] = highScores[4];

                tbkAnalysis.Opacity = 1;

                tbkAnalysis.Text = "The test is now finished. \n Maximum number of cards memorized: " + (initialNumberOfCards - 1).ToString();
                btnAnswer.Visibility = Windows.UI.Xaml.Visibility.Collapsed;
                btnAnswerNow.Visibility = Windows.UI.Xaml.Visibility.Collapsed;
            }
            else
            {
                bool addOneMoreUnit = true;
                tbkAnalysis.Text = "";

                for (int i = 0; i < list_orderOfCardsPressed.Count; i++)               //we base this for loop on the number of cards user pressed
                {
                    if (list_orderOfCardsPressed[i] == list_orderOfCardsShown[i])
                    {
                        tbkAnalysis.Text += "\nCard " + (i + 1).ToString() + ": Correct";
                        list_textBlocks[i].Foreground = new SolidColorBrush(Colors.Green);
                    }
                    else
                    {
                        tbkAnalysis.Text += "\nCard " + (i + 1).ToString() + ": Incorrect";
                        list_textBlocks[i].Foreground = new SolidColorBrush(Colors.Red);
                        addOneMoreUnit = false;
                    }
                }

                //if the user pressed a fewer number of cards than was shown, the check_tbkCheck writes "Missed"
                for (int i = list_orderOfCardsPressed.Count; i < list_orderOfCardsShown.Count; i++)
                {
                    tbkAnalysis.Text += "\nCard " + (i + 1).ToString() + ": Missed";
                    addOneMoreUnit = false;
                }

                if (addOneMoreUnit)
                {
                    initialNumberOfCards++;
                    numberOfWrongAnswer = 0;
                }
                else
                {
                    numberOfWrongAnswer++;
                }

                if (numberOfWrongAnswer == 2)
                {
                    ButtonAutomationPeer peer = new ButtonAutomationPeer(btnAnswer);
                    peer.Invoke();
                }
                else
                {
                    dateTimeBreak = dateTimeBreak.AddSeconds(4);
                    dispatcherTimerBreak.Tick += dispatcherTimerBreak_Tick;
                    dispatcherTimerBreak.Start();
                }

            }
        }
        private void TxtPassword_KeyDown(object sender, KeyRoutedEventArgs e)
        {
            if (e.Key == VirtualKey.Enter)
            {
                e.Handled = true;

                btnLogin.Focus(FocusState.Programmatic);
                ButtonAutomationPeer buttonPeer = new ButtonAutomationPeer(btnLogin);
                IInvokeProvider invokeProvider = (IInvokeProvider)buttonPeer.GetPattern(PatternInterface.Invoke);
                Debug.Assert(invokeProvider != null);
                invokeProvider.Invoke();
            }
        }