Example #1
0
 // Handle the UI exceptions by showing a dialog box, and asking the user whether
 // or not they wish to abort execution.
 // NOTE: This exception cannot be kept from terminating the application - it can only
 // log the event, and inform the user about it.
 private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
 {
     try
     {
         var ex = (Exception)e.ExceptionObject;
         // Todo: make this translatable
         ErrorWindow.ShowErrorDialog("An unhandled exception has occurred." + Environment.NewLine + "The program must now close.", ex, false);
     }
     catch
     {
         try
         {
             // Todo: make this translatable
             MessageBox.Show("A fatal non-UI error has occurred in PKHeX, and the details could not be displayed.  Please report this to the author.", "PKHeX Error", MessageBoxButtons.OK, MessageBoxIcon.Stop);
         }
         finally
         {
             Application.Exit();
         }
     }
 }