예제 #1
0
        private void MainMenu_ButtonClicked(object sender, ButtonClickedEventArgs eventargs)
        {
            switch (eventargs.Button)
            {
            case ButtonNames.Play:
                var newGameState = new GameState(StateManager.CurrentState, eventargs.Time);
                newGameState.LoadButtons();
                StateManager.CurrentState = newGameState;
                break;

            case ButtonNames.Solve:
                var newSolveState = new SolveState(StateManager.CurrentState);
                newSolveState.LoadButtons();
                StateManager.CurrentState = newSolveState;
                break;

            case ButtonNames.Help:
                var newHelpState = new HelpState(StateManager.CurrentState);
                newHelpState.LoadButtons();
                StateManager.CurrentState = newHelpState;
                break;

            case ButtonNames.About:
                var newAboutState = new AboutState(StateManager.CurrentState);
                newAboutState.LoadButtons();
                StateManager.CurrentState = newAboutState;
                break;
            }
        }
예제 #2
0
 protected virtual void OnButtonClicked(ButtonClickedEventArgs e)
 {
     if (ButtonClicked != null)
     {
         ButtonClicked(this, e);
     }
 }
예제 #3
0
        private void StartButton_Released(object sender, System.EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(Shared.BirdieLib.TwitterConfig.AccessToken) ||
                string.IsNullOrWhiteSpace(Shared.BirdieLib.TwitterConfig.AccessTokenSecret) ||
                (!Shared.BirdieLib.Active && PressedStart.HasValue && PressedStart.Value.AddSeconds(10) <= DateTime.Now))
            {
                // Hold the Start button for 10 seconds to clear Twitter credentials and return to auth screen.  --Kris
                Shared.BirdieLib.TwitterConfig.Clear();
                Shared.BirdieLib.TwitterConfig.Save();

                Navigation.PushAsync(new TwitterAuth(this));
            }
            else
            {
                // Fire event that tells Android/iOS apps that the start/stop button was pressed.  --Kris
                ButtonClickedEventArgs args = new ButtonClickedEventArgs
                {
                    ClickedAt = DateTime.Now
                };
                ButtonClicked?.Invoke(this, args);

                /*
                 * if (BirdieLib.Active)
                 * {
                 *  BirdieLib.Stop();
                 * }
                 * else
                 * {
                 *  BirdieLib.Start();
                 * }
                 */
            }
        }
        /// <summary>
        /// Invokes the method for a given <see cref="ButtonAttribute"/> and passes parameters when the button is clicked.
        /// </summary>
        /// <param name="sender">The sender of the original button click event.</param>
        /// <param name="e">The <see cref="ButtonClickedEventArgs"/> for the click event.</param>
        public void HandleButtonClick(object sender, ButtonClickedEventArgs e)
        {
            if (TryGetMetadata(e.Id, out ModOptionAttributeMetadata <T> modOptionMetadata) &&
                modOptionMetadata.MemberInfoMetadata.MethodParameterTypes is Type[] parameterTypes)
            {
                var parameters     = new object[parameterTypes.Length];
                var senderFound    = false;
                var eventArgsFound = false;

                for (var i = 0; i < parameters.Length; i++)
                {
                    Type type = parameterTypes[i];
                    if (!senderFound && type == typeof(object))
                    {
                        senderFound   = true;
                        parameters[i] = sender;
                    }
                    else if (!eventArgsFound && type == typeof(ButtonClickedEventArgs))
                    {
                        eventArgsFound = true;
                        parameters[i]  = e;
                    }

                    if (senderFound && eventArgsFound)
                    {
                        break;
                    }
                }

                modOptionMetadata.MemberInfoMetadata.InvokeMethod(Config, parameters);
            }
        }
예제 #5
0
        private async Task Bg_ButtonClicked(object sender, ButtonClickedEventArgs e)
        {
            if (e.Button == null)
            {
                return;
            }

            if (e.Button.Value == "back")
            {
                var start = new Menu();
                await this.NavigateTo(start);
            }
            else if (e.Button.Value == "switch")
            {
                switch (m_Buttons.KeyboardType)
                {
                case TelegramBotBase.Enums.eKeyboardType.ReplyKeyboard:
                    m_Buttons.KeyboardType = TelegramBotBase.Enums.eKeyboardType.InlineKeyBoard;
                    break;

                case TelegramBotBase.Enums.eKeyboardType.InlineKeyBoard:
                    m_Buttons.KeyboardType = TelegramBotBase.Enums.eKeyboardType.ReplyKeyboard;
                    break;
                }
            }
            else
            {
                await this.Device.Send($"Button clicked with Text: {e.Button.Text} and Value {e.Button.Value}");
            }
        }
예제 #6
0
 public ControlBarButtonComponent(IDrawingContext parent, string label, ButtonClickedEventArgs callback) : base(parent)
 {
     this.label    = label.ToCharArray();
     this.callback = callback;
     Width         = (label.Length * FontStore.SYSTEM_BOLD_15.width) + PADDING_FULL;
     Height        = FontStore.SYSTEM_REGULAR_15.height + PADDING_FULL;
 }
예제 #7
0
 private async void ButtonSetOnButtonClicked(object sender, ButtonClickedEventArgs e)
 {
     if (e.Button.CommandName == WellKnownCommandNames.Start)
     {
         var rand = new Random();
         await ReelSet.SpinAll(new [] { rand.Next(0, 20), rand.Next(0, 20), rand.Next(0, 20) });
     }
 }
예제 #8
0
 private void OnButtonClicked(ButtonNames button)
 {
     if (this.ButtonClicked != null)
     {
         ButtonClickedEventArgs args = new ButtonClickedEventArgs(button, this.time);
         this.ButtonClicked(this, args);
     }
 }
예제 #9
0
        private ButtonClickedEventArgs OnButtonClicked(int districtNumber)
        {
            ButtonClickedEventArgs args = new ButtonClickedEventArgs(districtNumber);

            OnButtonClicked(args);

            return(args);
        }
예제 #10
0
        private ButtonClickedEventArgs OnButtonClickedForOut()
        {
            ButtonClickedEventArgs args = new ButtonClickedEventArgs();

            OnButtonClicked(args);

            return(args);
        }
예제 #11
0
        private ButtonClickedEventArgs OnButtonClicked(int stationNunmber)
        {
            ButtonClickedEventArgs args = new ButtonClickedEventArgs(stationNunmber);

            OnButtonClicked(args);

            return(args);
        }
예제 #12
0
        private ButtonClickedEventArgs OnButtonClicked(string label)
        {
            ButtonClickedEventArgs args = new ButtonClickedEventArgs(label);

            OnButtonClicked(args);

            return(args);
        }
예제 #13
0
        public async Task OnButtonClicked(ButtonClickedEventArgs e)
        {
            var handler = this.Events[__evButtonClicked].GetInvocationList().Cast <AsyncEventHandler <ButtonClickedEventArgs> >();

            foreach (var h in handler)
            {
                await Async.InvokeAllAsync <ButtonClickedEventArgs>(h, this, e);
            }
        }
예제 #14
0
        private void button5_Click(object sender, EventArgs e)
        {
            ButtonClickedEventArgs a = new ButtonClickedEventArgs()
            {
                ActionName = "SHOW_REPORTS",
                ButtonText = button5.Text
            };

            OnButtonClicked?.Invoke(this, a);
        }
예제 #15
0
        internal static async Task <bool> HandleButtons(Window window, ButtonClickedEventArgs args)
        {
            EditPostWindow editPost;

            switch (args.Type)
            {
            case ButtonType.Up:
            case ButtonType.Down:
                await Utilities.Vote(args);

                break;

            case ButtonType.Reply:
                if (args.SelectedItem is Commentable)
                {
                    Commentable ctbl = args.SelectedItem as Commentable;
                    editPost       = EditPostWindow.CreateForComment(AppManager.Instance.API, ctbl);
                    editPost.Owner = window;
                    editPost.ShowDialog();

                    if (!editPost.Cancelled)
                    {
                        ctbl.IncrementComments();
                    }
                }
                break;

            case ButtonType.Delete:
                switch (args.SelectedItem.Type)
                {
                case FeedItem.FeedItemType.Post:
                    AppManager.Instance.API.User.DeleteRant(args.SelectedItem.AsRant().ID);
                    break;

                case FeedItem.FeedItemType.Comment:
                    AppManager.Instance.API.User.DeleteComment(args.SelectedItem.AsComment().ID);
                    break;
                }
                break;

            case ButtonType.Edit:
                TimeSpan timespan = DateTime.Now.ToUniversalTime() - FromUnixTime(args.SelectedItem.RawCreateTime);
                if (timespan > MaxModifyMinutes)
                {
                    throw new Exception(args.SelectedItem.Type + " can no longer be edited.");
                }

                editPost       = EditPostWindow.CreateForEdit(AppManager.Instance.API, args.SelectedItem);
                editPost.Owner = window;
                editPost.ShowDialog();
                break;
            }

            return(true);
        }
        /// <summary>
        /// The even handler for the buttons
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ButtonCatcher(object sender, ButtonClickedEventArgs e)
        {
            CustButton button = (CustButton)sender;

            switch (button.Id)
            {
            case 0:
                _button4.Play();
                if (_currentMouseState.LeftButton == ButtonState.Pressed && _previousMouseState.LeftButton == ButtonState.Pressed)
                {
                    Thread.Sleep(200);
                    ScreenManager.Game.ResetElapsedTime();

                    ScreenManager.AddScreen(new BackgroundScreen(), null);
                    ScreenManager.AddScreen(new PlayMenuScreen(_game, _vol), null);
                }
                break;

            case 1:
                _button1.Play();
                if (_currentMouseState.LeftButton == ButtonState.Pressed && _previousMouseState.LeftButton == ButtonState.Pressed)
                {
                    Thread.Sleep(200);
                    ScreenManager.Game.ResetElapsedTime();

                    ScreenManager.AddScreen(new BackgroundScreen(), null);
                    ScreenManager.AddScreen(new FleetLoadScreen(_game, _vol, true), null);
                }
                break;

            case 2:
                if (_currentMouseState.LeftButton == ButtonState.Pressed && _previousMouseState.LeftButton == ButtonState.Released)
                {
                    _button2.Play();
                    Thread.Sleep(200);
                    _player1             = null;
                    _player2             = null;
                    _buttons[2].IsActive = false;
                    _buttons[3].IsActive = false;
                }
                break;

            case 3:
                _button3.Play();
                if (_currentMouseState.LeftButton == ButtonState.Pressed && _previousMouseState.LeftButton == ButtonState.Pressed)
                {
                    Thread.Sleep(200);
                    ScreenManager.Game.ResetElapsedTime();

                    ScreenManager.AddScreen(new BackgroundScreen(), null);
                    ScreenManager.AddScreen(new HotseatDuelScreen(_game, _vol, _player1, _player2), null);
                }
                break;
            }
        }
예제 #17
0
        private void BoardManager_PlayerThinking(object sender, ButtonClickedEventArgs e)
        {
            btnSwitchPlayer.Enabled = false;
            progressBar.Value       = 0;
            pnPlayBoard.Enabled     = false;
            clock.Start();

            networkManager.Send(new NetworkData((int)COMMAND.CHECKPOINT, null, e.ClickedPoint));
            undoToolStripMenuItem.Enabled = false;
            Listen();
        }
예제 #18
0
        private void OccurEvent(object sender)
        {
            SimpleButton btn = sender as SimpleButton;

            InitializeButtonColor();
            btn.Appearance.BackColor = System.Drawing.Color.Transparent;
            ButtonClickedEventArgs args = new ButtonClickedEventArgs();

            args.DistrictNumber = Convert.ToInt32(btn.Tag);
            OnButtonClicked(args.DistrictNumber);
        }
예제 #19
0
        private void button_Clicked(object sender, EventArgs e)
        {
            if (ButtonClicked != null)
            {
                ButtonClickedEventArgs args = new ButtonClickedEventArgs();
                args.FirstName      = FirstName;
                args.LastName       = LastName;
                args.SocialSecurity = SocialSecurity;

                ButtonClicked(sender, args);
            }
        }
예제 #20
0
        private void button3_Click(object sender, EventArgs e)
        {
            //frmMovimentosCAIXA frm = new frmMovimentosCAIXA();
            //frm.ShowDialog();

            ButtonClickedEventArgs a = new ButtonClickedEventArgs()
            {
                ActionName = "SHOW_CAIXA",
                ButtonText = button3.Text
            };

            OnButtonClicked?.Invoke(this, a);
        }
예제 #21
0
        private void button4_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Tem a Certeza que deseja sair?", "Confirmação", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                ButtonClickedEventArgs a = new ButtonClickedEventArgs()
                {
                    ActionName = "EXIT",
                    ButtonText = button1.Text
                };

                OnButtonClicked?.Invoke(this, a);
            }
        }
        public async Task Vote(ButtonClickedEventArgs args)
        {
            try
            {
                await Utilities.HandleButtons(window, args);

                //await Utilities.Vote(args, api);
            }
            catch (Exception e)
            {
                MessageBoxFactory.ShowError(e);
            }
        }
예제 #23
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnGerirBeneficiario_Click(object sender, EventArgs e)
        {
            ButtonClickedEventArgs args = new ButtonClickedEventArgs()
            {
                ActionName = "MANAGE_BENEFICIARIOS",
                ButtonText = btnGerirBeneficiario.Text,
                Data       = new Dictionary <string, object>()
                {
                    { "EntidadeId", cboEntidade.SelectedValue }
                }
            };

            OnButtonClicked.Invoke(this, args);
        }
예제 #24
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnCancelar_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Tem a Certeza que deseja sair?", "Confirmação", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                ButtonClickedEventArgs args = new ButtonClickedEventArgs()
                {
                    ActionName = "EXIT",
                    ButtonText = btnCancelar.Text,
                    Data       = null
                };

                OnButtonClicked.Invoke(this, args);
            }
        }
예제 #25
0
 protected void OnSelectionChanged(object value, ButtonClickedEventArgs args)
 {
     foreach (ButtonsPanel bp in categories)
     {
         if (bp.Name == ((ButtonsPanel)value).Name)
         {
             selectedPanel = bp;
         }
         else
         {
             bp.Unselect();
         }
     }
 }
예제 #26
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnGerirCategoria_Click(object sender, EventArgs e)
        {
            ButtonClickedEventArgs args = new ButtonClickedEventArgs()
            {
                ActionName = "MANAGE_CATEGORIAS",
                ButtonText = btnGerirCategoria.Text,
                Data       = new Dictionary <string, object>()
                {
                    { "TipoMovimentoId", cboTipoMovimento.SelectedValue }
                }
            };

            OnButtonClicked.Invoke(this, args);
        }
예제 #27
0
        /// <summary>
        /// Handles the link buttons in the screen
        /// </summary>
        /// <param name="args"></param>
        /// <returns></returns>
        internal async Task ButtonClicked(ButtonClickedEventArgs args)
        {
            try
            {
                bool handled = await Utilities.HandleButtons(window, args);

                if (handled)
                {
                    GetComments();
                }
            }
            catch (Exception e)
            {
                MessageBoxFactory.ShowError(e);
            }
        }
예제 #28
0
        // When the button is clicked, check if we're scheduled and fire the event.  --Kris
        public void C_ButtonClicked(object sender, ButtonClickedEventArgs e)
        {
            AlarmActiveEventArgs args;

            if (!Shared.BirdieLib.Active)
            {
                args = StartBirdieLib();
            }
            else
            {
                args = StopBirdieLib();
            }

            // Fire the event to update the button.  --Kris
            MainPage.InvokeAlarmActive(args);
        }
예제 #29
0
        /// <summary>
        /// The even handler for the buttons
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ButtonCatcher(object sender, ButtonClickedEventArgs e)
        {
            CustButton button = (CustButton)sender;

            switch (button.Id)
            {
            case 0:     //dual
                _button1.Play();
                if (_currentMouseState.LeftButton == ButtonState.Pressed && _previousMouseState.LeftButton == ButtonState.Pressed)
                {
                    Thread.Sleep(200);
                    ScreenManager.Game.ResetElapsedTime();

                    ScreenManager.AddScreen(new BackgroundScreen(), null);
                    ScreenManager.AddScreen(new DuelFleetSelectionScreen(_game, _vol, null, null), null);
                }
                break;

            case 1:     //campaign, might remove
                _button2.Play();
                break;

            case 2:     //Fleet customizations
                _button3.Play();
                if (_currentMouseState.LeftButton == ButtonState.Pressed && _previousMouseState.LeftButton == ButtonState.Pressed)
                {
                    Thread.Sleep(200);
                    ScreenManager.Game.ResetElapsedTime();

                    ScreenManager.AddScreen(new BackgroundScreen(), null);
                    ScreenManager.AddScreen(new FleetCustomizationMenuScreen(_game, _vol), null);
                }
                break;

            case 3:     //Back to the main menu
                _button4.Play();
                if (_currentMouseState.LeftButton == ButtonState.Pressed && _previousMouseState.LeftButton == ButtonState.Pressed)
                {
                    Thread.Sleep(200);
                    ScreenManager.Game.ResetElapsedTime();

                    ScreenManager.AddScreen(new BackgroundScreen(), null);
                    ScreenManager.AddScreen(new MainMenuScreen(_game, _vol), null);
                }
                break;
            }
        }
예제 #30
0
        public async void HandleButton(ButtonClickedEventArgs args)
        {
            try
            {
                await Utilities.HandleButtons(window, args);
            }
            catch (InvalidCredentialsException e)
            {
                await Login();

                HandleButton(args);
            }
            catch (Exception e)
            {
                UpdateStatus(e.Message);
            }
        }
예제 #31
0
		void _pscontrol_ButtonClicked(object sender, ButtonClickedEventArgs args)
		{
			ShowAdvancedOptions = false;            

			switch (args.ButtonType)
			{
			case ProtectSimpleButtonType.Send:
                DisableControls(false);
                HandleSend();
				break;
			case ProtectSimpleButtonType.SendWithoutProfile:
                DisableControls();
				HandleSendWithoutProfile();
				break;
			case ProtectSimpleButtonType.Advanced:                
                DisableControls(true, false);
				HandleAdvancedOption();
				break;
			case ProtectSimpleButtonType.Cancel:
                DisableControls();
				HandleCancel();
				break;
			default:
				break;
			}
		}