Clean up drag+drop handling in MainDiscoForm

This commit is contained in:
YoshiRulz 2021-10-02 05:03:32 +10:00 committed by James Groom
parent a514effba7
commit df5ef0ec2d
1 changed files with 8 additions and 6 deletions

View File

@ -35,26 +35,28 @@ namespace BizHawk.Client.DiscoHawk
private void lblMagicDragArea_DragDrop(object sender, DragEventArgs e) private void lblMagicDragArea_DragDrop(object sender, DragEventArgs e)
{ {
List<string> files = ValidateDrop(e.Data); lblMagicDragArea.AllowDrop = false;
if (files.Count == 0) return; Cursor = Cursors.WaitCursor;
try try
{ {
Cursor = Cursors.WaitCursor; foreach (var file in ValidateDrop(e.Data))
foreach (var file in files)
{ {
var success = DiscoHawkLogic.HawkAndWriteFile( var success = DiscoHawkLogic.HawkAndWriteFile(
inputPath: file, inputPath: file,
errorCallback: err => MessageBox.Show(err, "Error loading disc")); errorCallback: err => MessageBox.Show(err, "Error loading disc"));
if (!success) break; if (!success) break;
} }
Cursor = Cursors.Default;
} }
catch (Exception ex) catch (Exception ex)
{ {
MessageBox.Show(ex.ToString(), "Error loading disc"); MessageBox.Show(ex.ToString(), "Error loading disc");
throw; throw;
} }
finally
{
lblMagicDragArea.AllowDrop = true;
Cursor = Cursors.Default;
}
} }
#if false // API has changed #if false // API has changed