/// <summary> /// Support cross-threading. Always show Main form and make it the owner of the MessageBox. /// </summary> /// <param name="text">Main text of the message</param> /// <param name="caption">Title of the box</param> /// <param name="buttons">Buttons to display</param> /// <param name="icon">Icon to display</param> public static DialogResult Show(string text, string caption, MessageBoxButtons buttons, MessageBoxIcon icon) { OutlookGoogleCalendarSync.Forms.Main mainFrm = OutlookGoogleCalendarSync.Forms.Main.Instance; log.Debug(caption + ": " + text); if (mainFrm == null || mainFrm.IsDisposed) { return(MessageBox.Show(text, caption, buttons, icon)); } if (mainFrm.InvokeRequired) { mainFrm.Invoke(new System.Action(() => { mainFrm.MainFormShow(); FlashWindow(mainFrm.Handle, FlashMode.FLASHW_ALL | FlashMode.FLASHW_TIMERNOFG); dr = MessageBox.Show(mainFrm, text, caption, buttons, icon); })); } else { mainFrm.MainFormShow(); FlashWindow(mainFrm.Handle, FlashMode.FLASHW_ALL | FlashMode.FLASHW_TIMERNOFG); dr = MessageBox.Show(mainFrm, text, caption, buttons, icon); } log.Debug("Response: " + dr.ToString()); return(dr); }
/// <summary> /// Support cross-threading. Always show Main form and make it the owner of the MessageBox. /// </summary> /// <param name="text">Main text of the message</param> /// <param name="caption">Title of the box</param> /// <param name="buttons">Buttons to display</param> /// <param name="icon">Icon to display</param> /// <param name="defaultButton">Button to focus</param> public static DialogResult Show(string text, string caption, MessageBoxButtons buttons, MessageBoxIcon icon, MessageBoxDefaultButton defaultButton) { OutlookGoogleCalendarSync.Forms.Main mainFrm = OutlookGoogleCalendarSync.Forms.Main.Instance; if (mainFrm == null || mainFrm.IsDisposed) { return(MessageBox.Show(text, caption, buttons, icon, defaultButton)); } if (mainFrm.InvokeRequired) { mainFrm.Invoke(new System.Action(() => { mainFrm.MainFormShow(); dr = MessageBox.Show(mainFrm, text, caption, buttons, icon, defaultButton); })); } else { mainFrm.MainFormShow(); dr = MessageBox.Show(mainFrm, text, caption, buttons, icon, defaultButton); } return(dr); }