altosui: write USB serial number string while flashing
[fw/altos] / ao-tools / altosui / AltosRomconfigUI.java
index 21c34ef442546bd2bea560c593e87c55ce1d1a62..bc511865a552c48c261ed2be2996cbc70b09993e 100644 (file)
@@ -143,12 +143,31 @@ public class AltosRomconfigUI
                return Integer.parseInt(serial_value.getText());
        }
 
+       void set_serial(int serial) {
+               serial_value.setText(String.format("%d", serial));
+       }
+
        int radio_calibration() {
                return Integer.parseInt(radio_calibration_value.getText());
        }
 
+       void set_radio_calibration(int calibration) {
+               radio_calibration_value.setText(String.format("%d", calibration));
+       }
+
+       public void set(AltosRomconfig config) {
+               if (config != null && config.valid()) {
+                       set_serial(config.serial_number);
+                       set_radio_calibration(config.radio_calibration);
+               }
+       }
+
        public AltosRomconfig romconfig() {
-               return new AltosRomconfig(serial(), radio_calibration());
+               try {
+                       return new AltosRomconfig(serial(), radio_calibration());
+               } catch (NumberFormatException ne) {
+                       return null;
+               }
        }
 
        public AltosRomconfig showDialog() {