public void Handle(MessageBoxEvent message) { // Check, if we need to dispatch if (!Application.Current.Dispatcher.CheckAccess()) { var waitHandle = new AutoResetEvent(false); Application.Current.Dispatcher.Invoke(() => { Handle(message); waitHandle.Set(); }); waitHandle.WaitOne(); return; } var topWindow = Application.Current.Windows.Count - 1; message.MessageBoxResult = MessageBox.Show( Application.Current.Windows[topWindow], message.MessageText, message.MessageTitle, message.Buttons, message.Icon); }
private void AdjustEventContent(MessageBoxEvent boxEvent) { boxEvent.EventContent = boxEventTypeRegistry.IsSupportedEventType(boxEvent.EventType) ? Serializer.NormalizeDeserializedObjectToType(boxEvent.EventContent, boxEventTypeRegistry.GetEventContentType(boxEvent.EventType)) : null; }
public void AddMessageBox(string text, float messageSpeed) { var e = new MessageBoxEvent(text); if (gameEvents.Count > 0) gameEvents.Peek().NextEvent = e; gameEvents.Enqueue(e); }
void OnSureUpdateClick(MessageBoxEvent evt) { if (evt == MessageBoxEvent.Ok) { StartCoroutine(GoToUpdateResource(CachUpdateInfo, CachCheckData)); } else { Application.Quit(); } }
private static void ShowMessageBox(MessageBoxEvent messageBox) { var result = MessageBox.Show( owner: messageBox.Owner as Window, messageBoxText: messageBox.MessageBoxText, caption: messageBox.Caption, button: messageBox.MessageBoxButton, icon: messageBox.MessageBoxImage ); messageBox.Result = result; }
private void viewModel_ShowMessageBox(object sender, DataEventArgs <MessageBoxEvent> e) { if (e == null) { throw new ArgumentNullException("e"); } MessageBoxEvent messageBoxEvent = e.Data; messageBoxEvent.Owner = this; _viewModel.EventAggregator.Publish(messageBoxEvent); }
/// <summary>Shows a message box.</summary> /// <param name="messageBoxText">The message box text.</param> /// <param name="caption">The caption.</param> /// <param name="buttons">The buttons.</param> /// <param name="image">The image.</param> /// <returns>The message box result.</returns> protected MessageBoxResult MessageBox( string messageBoxText, string caption, MessageBoxButton buttons, MessageBoxImage image ) { MessageBoxEvent messageBox = new MessageBoxEvent { MessageBoxText = messageBoxText, Caption = caption, MessageBoxButton = buttons, MessageBoxImage = image }; return(MessageBox(messageBox)); }
public async Task UnloadedAsync() { if (UnitOfWork.HasChanges()) { var messageBoxEvent = new MessageBoxEvent("Question", "Save changes?", "Yes", "No"); await EventAggregator.PublishAsync(messageBoxEvent); if (messageBoxEvent.Result) { await SaveChangesAsync(); } else { await OnDoNotSaveChangesAsync(); } } await OnUnloadedAsync(); }
/// <summary>Messages the box.</summary> /// <param name="messageBoxEvent">The message box event.</param> /// <returns>The message box result.</returns> protected MessageBoxResult MessageBox(MessageBoxEvent messageBoxEvent) { if (messageBoxEvent == null) { throw new ArgumentException("messageBoxEvent"); } var handler = ShowMessageBox; if (handler != null) { handler(this, new DataEventArgs <MessageBoxEvent>(messageBoxEvent)); } else { throw new Exception("'ShowMessageBox' event is not subscribed to."); } return(messageBoxEvent.Result); }
/// <summary> /// Determines whether the specified set of <see cref="MessageBoxButtons" /> can raise the specified <see cref="MessageBoxEvent" />. /// </summary> /// <param name="buttons">A <see cref="MessageBoxButtons" /> value.</param> /// <param name="e">A <see cref="MessageBoxEvent" /> event.</param> /// <returns> /// <see langword="true" />, if the specified set of <see cref="MessageBoxButtons" /> can raise the specified <see cref="MessageBoxEvent" />; /// otherwise, <see langword="false" />. /// </returns> public static bool HasEvent(MessageBoxButtons buttons, MessageBoxEvent e) { switch (e) { case MessageBoxEvent.Ok: return(CSharp.EqualsAny(buttons, MessageBoxButtons.Ok, MessageBoxButtons.OkCancel)); case MessageBoxEvent.Cancel: return(CSharp.EqualsAny(buttons, MessageBoxButtons.OkCancel, MessageBoxButtons.YesNoCancel, MessageBoxButtons.RetryCancel)); case MessageBoxEvent.Yes: return(CSharp.EqualsAny(buttons, MessageBoxButtons.YesNo, MessageBoxButtons.YesNoCancel)); case MessageBoxEvent.No: return(CSharp.EqualsAny(buttons, MessageBoxButtons.YesNo, MessageBoxButtons.YesNoCancel)); case MessageBoxEvent.Abort: return(CSharp.EqualsAny(buttons, MessageBoxButtons.AbortRetryIgnore)); case MessageBoxEvent.Retry: return(CSharp.EqualsAny(buttons, MessageBoxButtons.AbortRetryIgnore, MessageBoxButtons.RetryCancel)); case MessageBoxEvent.Ignore: return(CSharp.EqualsAny(buttons, MessageBoxButtons.AbortRetryIgnore)); default: throw new InvalidEnumArgumentException(); } }
private async Task OnMessageBoxEvent(MessageBoxEvent obj) { var result = await DisplayAlert(obj.Title, obj.Message, obj.Accept, obj.Cancel); obj.Result = result; }
public static void InvokeMessageBoxEvent(MessageBoxEventArgs args) { MessageBoxEvent?.Invoke(args); }
public static void Add(string appendStr) { MessageBuilder = appendStr; MessageBoxEvent?.Invoke(); }
private bool ValidateProfileName() { string message; if (!Profile.ValidateProfileName(out message)) { MessageBoxEvent messageBoxEvent = new MessageBoxEvent { MessageBoxText = message, Caption = "New profile", MessageBoxButton = MessageBoxButton.OK, MessageBoxImage = MessageBoxImage.Information }; MessageBox(messageBoxEvent); return(false); } // Check if file exists string fileName = Profile.GetProfileFileName(); if (File.Exists(fileName) && !_confirmedOverwrite) { // TODO: Localize MessageBoxEvent messageBoxEvent = new MessageBoxEvent { MessageBoxText = string.Format("'{0}' exists. Overwrite?", fileName), Caption = "New profile", MessageBoxButton = MessageBoxButton.YesNo, MessageBoxImage = MessageBoxImage.Question }; var result = MessageBox(messageBoxEvent); if (result != MessageBoxResult.Yes) { return(false); } _confirmedOverwrite = true; } // Check if able to create file if (!File.Exists(fileName)) { try { File.WriteAllBytes(fileName, new byte[0]); } catch { // TODO: Localize MessageBoxEvent messageBoxEvent = new MessageBoxEvent { MessageBoxText = string.Format("'{0}' cannot be created.", fileName), Caption = "New profile", MessageBoxButton = MessageBoxButton.OK, MessageBoxImage = MessageBoxImage.Information }; MessageBox(messageBoxEvent); return(false); } File.Delete(fileName); } return(true); }