From 8384b9f6f2fe2c2a17566f771554d9b0e174d1b1 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Tue, 17 Aug 2021 20:02:05 -0700 Subject: [PATCH] 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 --- micropeak/MicroDownload.java | 10 +++------- micropeak/MicroPeak.java | 13 +++++++++++-- 2 files changed, 14 insertions(+), 9 deletions(-) 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() { -- 2.30.2