From: Keith Packard Date: Wed, 18 Aug 2021 03:02:05 +0000 (-0700) Subject: micropeak: Show error message if USB adapter open fails X-Git-Tag: 1.9.8~1^2~35 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=8384b9f6f2fe2c2a17566f771554d9b0e174d1b1 micropeak: Show error message if USB adapter open fails Pop up an error dialog and *don't* show the download dialog as if the open had worked. Signed-off-by: Keith Packard --- diff --git a/micropeak/MicroDownload.java b/micropeak/MicroDownload.java index 7e3d1e59..4dcb7a36 100644 --- a/micropeak/MicroDownload.java +++ b/micropeak/MicroDownload.java @@ -190,12 +190,7 @@ public class MicroDownload extends AltosUIDialog implements Runnable, ActionList } public void start() { - try { - serial = new MicroSerial(device); - serial.set_log(this); - } catch (FileNotFoundException fe) { - return; - } + serial.set_log(this); serial_thread = new Thread(this); serial_thread.start(); @@ -212,7 +207,7 @@ public class MicroDownload extends AltosUIDialog implements Runnable, ActionList setVisible(false); } - public MicroDownload(MicroPeak owner, AltosDevice device) { + public MicroDownload(MicroPeak owner, AltosDevice device, MicroSerial serial) { super (owner, "Download MicroPeak Data", false); int y = 0; @@ -223,6 +218,7 @@ public class MicroDownload extends AltosUIDialog implements Runnable, ActionList this.owner = owner; this.device = device; + this.serial = serial; pane = getScrollablePane(); pane.setLayout(new GridBagLayout()); diff --git a/micropeak/MicroPeak.java b/micropeak/MicroPeak.java index c34e874a..96fb33ba 100644 --- a/micropeak/MicroPeak.java +++ b/micropeak/MicroPeak.java @@ -136,9 +136,18 @@ public class MicroPeak extends MicroFrame implements ActionListener, ItemListene private void DownloadData() { AltosDevice device = MicroDeviceDialog.show(this); + MicroSerial serial = null; + try { + serial = new MicroSerial(device); + } catch (FileNotFoundException fe) { + JOptionPane.showMessageDialog(this, + fe.getMessage(), + "Cannot open device", + JOptionPane.ERROR_MESSAGE); + return; + } - if (device != null) - new MicroDownload(this, device); + new MicroDownload(this, device, serial); } private void no_data() {