Remove pyro wizard file from master
[fw/altos] / altosui / AltosConfigUI.java
index b072ede755e2cbf56afaacd453c2fe6157228c72..e5f1949a4d2ac78c33160637c4a78275aee8cd69 100644 (file)
@@ -3,7 +3,8 @@
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -21,8 +22,9 @@ import java.awt.*;
 import java.awt.event.*;
 import javax.swing.*;
 import javax.swing.event.*;
-import org.altusmetrum.altoslib_6.*;
-import org.altusmetrum.altosuilib_6.*;
+import java.text.*;
+import org.altusmetrum.altoslib_11.*;
+import org.altusmetrum.altosuilib_11.*;
 
 public class AltosConfigUI
        extends AltosUIDialog
@@ -62,7 +64,7 @@ public class AltosConfigUI
        JComboBox<String>       apogee_delay_value;
        JComboBox<String>       apogee_lockout_value;
        AltosUIFreqList         radio_frequency_value;
-       JTextField              radio_calibration_value;
+       JLabel                  radio_calibration_value;
        JRadioButton            radio_enable_value;
        AltosUIRateList         rate_value;
        JComboBox<String>       aprs_interval_value;
@@ -190,13 +192,6 @@ public class AltosConfigUI
                return product != null && product.startsWith("TeleMetrum");
        }
 
-       void set_radio_calibration_tool_tip() {
-               if (radio_calibration_value.isEnabled())
-                       radio_calibration_value.setToolTipText("Tune radio output to match desired frequency");
-               else
-                       radio_calibration_value.setToolTipText("Cannot tune radio while connected over packet mode");
-       }
-
        void set_radio_enable_tool_tip() {
                if (radio_enable_value.isEnabled())
                        radio_enable_value.setToolTipText("Enable/Disable telemetry and RDF transmissions");
@@ -477,12 +472,8 @@ public class AltosConfigUI
                c.anchor = GridBagConstraints.LINE_START;
                c.insets = ir;
                c.ipady = 5;
-               radio_calibration_value = new JTextField(String.format("%d", 1186611));
-               radio_calibration_value.getDocument().addDocumentListener(this);
-               if (remote)
-                       radio_calibration_value.setEnabled(false);
+               radio_calibration_value = new JLabel(String.format("%d", 1186611));
                pane.add(radio_calibration_value, c);
-               set_radio_calibration_tool_tip();
                row++;
 
                /* Radio Enable */
@@ -976,12 +967,17 @@ public class AltosConfigUI
 
        }
 
-       public int main_deploy() {
-               return (int) (AltosConvert.height.parse(main_deploy_value.getSelectedItem().toString()) + 0.5);
+       public int main_deploy() throws AltosConfigDataException {
+               String  str = main_deploy_value.getSelectedItem().toString();
+               try {
+                       return (int) (AltosConvert.height.parse_locale(str) + 0.5);
+               } catch (ParseException pe) {
+                       throw new AltosConfigDataException("invalid main deploy height %s", str);
+               }
        }
 
        String get_main_deploy_label() {
-               return String.format("Main Deploy Altitude(%s):", AltosConvert.height.show_units_name(AltosLib.MISSING));
+               return String.format("Main Deploy Altitude(%s):", AltosConvert.height.parse_units());
        }
 
        String[] main_deploy_values() {
@@ -1006,14 +1002,21 @@ public class AltosConfigUI
                String v = main_deploy_value.getSelectedItem().toString();
                main_deploy_label.setText(get_main_deploy_label());
                set_main_deploy_values();
-               int m = (int) (AltosConvert.height.parse(v, !imperial_units) + 0.5);
-               set_main_deploy(m);
+               try {
+                       int m = (int) (AltosConvert.height.parse_locale(v, !imperial_units) + 0.5);
+                       set_main_deploy(m);
+               } catch (ParseException pe) {
+               }
 
                if (tracker_motion_value.isEnabled()) {
                        String motion = tracker_motion_value.getSelectedItem().toString();
                        tracker_motion_label.setText(get_tracker_motion_label());
                        set_tracker_motion_values();
-                       set_tracker_motion((int) (AltosConvert.height.parse(motion, !imperial_units) + 0.5));
+                       try {
+                               int m = (int) (AltosConvert.height.parse_locale(motion, !imperial_units) + 0.5);
+                               set_tracker_motion(m);
+                       } catch (ParseException pe) {
+                       }
                }
 
                if (!was_dirty)
@@ -1074,10 +1077,6 @@ public class AltosConfigUI
                        radio_calibration_value.setText(String.format("%d", new_radio_calibration));
        }
 
-       public int radio_calibration() throws AltosConfigDataException {
-               return parse_int("radio calibration", radio_calibration_value.getText(), false);
-       }
-
        public void set_radio_enable(int new_radio_enable) {
                radio_enable_label.setVisible(new_radio_enable >= 0);
                radio_enable_value.setVisible(new_radio_enable >= 0);
@@ -1245,7 +1244,7 @@ public class AltosConfigUI
        }
 
        String get_tracker_motion_label() {
-               return String.format("Logging Trigger Motion (%s):", AltosConvert.height.show_units_name(AltosLib.MISSING));
+               return String.format("Logging Trigger Motion (%s):", AltosConvert.height.parse_units());
        }
 
        void set_tracker_tool_tip() {
@@ -1272,7 +1271,12 @@ public class AltosConfigUI
        }
 
        public int tracker_motion() throws AltosConfigDataException {
-               return (int) AltosConvert.height.parse(tracker_motion_value.getSelectedItem().toString());
+               String str = tracker_motion_value.getSelectedItem().toString();
+               try {
+                       return (int) (AltosConvert.height.parse_locale(str) + 0.5);
+               } catch (ParseException pe) {
+                       throw new AltosConfigDataException("invalid tracker motion %s", str);
+               }
        }
 
        public void set_tracker_interval(int tracker_interval) {