private void OnPromptChanged(object sender, EventArgs e) { var prompt = m_updater.CurrentPrompt; var description = m_updater.GameDescription; var customMessage = m_updater.CustomMessage; var previousUsername = m_updater.PreviouslyEnteredUsername; var previousPassword = m_updater.PreviouslyEnteredPassword; Application.Invoke(delegate { if (prompt == GameUpdatePrompt.Username || prompt == GameUpdatePrompt.Password || prompt == GameUpdatePrompt.UsernameAndPassword) { // Show credentials dialog var dialog = new CredentialsDialog( this, (prompt != GameUpdatePrompt.Password) ? ((previousUsername != null) ? previousUsername : "") : null, (prompt != GameUpdatePrompt.Username) ? ((previousPassword != null) ? previousPassword : "") : null ); dialog.ShowAll(); int response = dialog.Run(); string username = dialog.Username; string password = dialog.Password; dialog.Destroy(); // Inform the updater if (response == (int)ResponseType.Close || response == (int)ResponseType.DeleteEvent) { m_updater.Cancel(); m_updater.AnswerPrompt(false); } else { m_updater.AnswerPrompt( response == (int)ResponseType.Ok, username, password ); } } else if (prompt == GameUpdatePrompt.CustomMessage) { // Show message dialog Console.WriteLine(customMessage); var dialog = new MessageDialog( this, DialogFlags.Modal, MessageType.Info, ButtonsType.Ok, customMessage ); dialog.ShowAll(); int response = dialog.Run(); dialog.Destroy(); // Inform the updater m_updater.AnswerPrompt(true); } else { // Show question dialog var dialog = new MessageDialog( this, DialogFlags.Modal, MessageType.Question, ButtonsType.YesNo, prompt.GetQuestion(Program.Language, description) ); dialog.ShowAll(); int response = dialog.Run(); dialog.Destroy(); // Inform the updater if (response == (int)ResponseType.Close || response == (int)ResponseType.DeleteEvent) { m_updater.Cancel(); m_updater.AnswerPrompt(false); } else { m_updater.AnswerPrompt(response == (int)ResponseType.Yes); } } }); }
private void OnPromptChanged( object sender, EventArgs e ) { var prompt = m_updater.CurrentPrompt; var description = m_updater.GameDescription; var customMessage = m_updater.CustomMessage; var previousUsername = m_updater.PreviouslyEnteredUsername; var previousPassword = m_updater.PreviouslyEnteredPassword; Application.Invoke( delegate { if( prompt == GameUpdatePrompt.Username || prompt == GameUpdatePrompt.Password || prompt == GameUpdatePrompt.UsernameAndPassword ) { // Show credentials dialog var dialog = new CredentialsDialog( this, (prompt != GameUpdatePrompt.Password) ? ((previousUsername != null) ? previousUsername : "") : null, (prompt != GameUpdatePrompt.Username) ? ((previousPassword != null) ? previousPassword : "") : null ); dialog.ShowAll(); int response = dialog.Run(); string username = dialog.Username; string password = dialog.Password; dialog.Destroy(); // Inform the updater if( response == (int)ResponseType.Close || response == (int)ResponseType.DeleteEvent ) { m_updater.Cancel(); m_updater.AnswerPrompt( false ); } else { m_updater.AnswerPrompt( response == (int)ResponseType.Ok, username, password ); } } else if( prompt == GameUpdatePrompt.CustomMessage ) { // Show message dialog Console.WriteLine( customMessage ); var dialog = new MessageDialog( this, DialogFlags.Modal, MessageType.Info, ButtonsType.Ok, customMessage ); dialog.ShowAll(); int response = dialog.Run(); dialog.Destroy(); // Inform the updater m_updater.AnswerPrompt( true ); } else { // Show question dialog var dialog = new MessageDialog( this, DialogFlags.Modal, MessageType.Question, ButtonsType.YesNo, prompt.GetQuestion( Program.Language, description ) ); dialog.ShowAll(); int response = dialog.Run(); dialog.Destroy(); // Inform the updater if( response == (int)ResponseType.Close || response == (int)ResponseType.DeleteEvent ) { m_updater.Cancel(); m_updater.AnswerPrompt( false ); } else { m_updater.AnswerPrompt( response == (int)ResponseType.Yes ); } } } ); }