diff options
author | Keith Packard <keithp@keithp.com> | 2013-12-08 21:07:17 -0800 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2013-12-08 21:07:17 -0800 |
commit | c1711890c002fe359bd6c3fdf4092b35d464c6d9 (patch) | |
tree | b106aee25797a07a41d453458305518f9f773360 | |
parent | 710343a23c7e6e9c079eafdf3aeea8a40cc2ce61 (diff) |
altosui: When flashing to TeleDongle or TeleBT, match any .ihx file
Let the user pick any .ihx file when using a device which can only be
used as a pair programmer. Note that 'telemetrum' can be either, and
we'll assume that it's a self-programmed device (v2) for now.
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r-- | altosui/AltosFlashUI.java | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/altosui/AltosFlashUI.java b/altosui/AltosFlashUI.java index 5ec5ea8a..e305d458 100644 --- a/altosui/AltosFlashUI.java +++ b/altosui/AltosFlashUI.java @@ -69,9 +69,18 @@ public class AltosFlashUI }; private boolean is_pair_programmed() { - String name = file.getName(); - for (int i = 0; i < pair_programmed.length; i++) { - if (name.startsWith(pair_programmed[i])) + + if (file != null) { + String name = file.getName(); + for (int i = 0; i < pair_programmed.length; i++) { + if (name.startsWith(pair_programmed[i])) + return true; + } + } + if (device != null) { + if (!device.matchProduct(AltosLib.product_altusmetrum) && + (device.matchProduct(AltosLib.product_teledongle) || + device.matchProduct(AltosLib.product_telebt))) return true; } return false; @@ -223,7 +232,7 @@ public class AltosFlashUI hexfile_chooser.addChoosableFileFilter(ihx_filter); hexfile_chooser.setFileFilter(ihx_filter); - if (!device.matchProduct(AltosLib.product_altusmetrum)) { + if (!is_pair_programmed() && !device.matchProduct(AltosLib.product_altusmetrum)) { for (int i = 0; i < filters.length; i++) { if (device != null && device.matchProduct(filters[i].product)) hexfile_chooser.setFileFilter(filters[i]); |