diff options
author | Keith Packard <keithp@keithp.com> | 2011-01-07 20:46:29 -0800 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2011-01-07 20:47:55 -0800 |
commit | ca66f86a899c191b6362a334417fc84a79349677 (patch) | |
tree | 23970b9819716e5677d983bd3213e4976c6706a5 /altosui/AltosConfigUI.java | |
parent | 52ac83fedbfd380d14d4df2e79992bbdfba3552a (diff) |
altosui: Add configuration of flight log size
This adds to the TeleMetrum configuration UI the ability to set the
maximum flight log size.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altosui/AltosConfigUI.java')
-rw-r--r-- | altosui/AltosConfigUI.java | 53 |
1 files changed, 47 insertions, 6 deletions
diff --git a/altosui/AltosConfigUI.java b/altosui/AltosConfigUI.java index cfa5d7b9..e09eab25 100644 --- a/altosui/AltosConfigUI.java +++ b/altosui/AltosConfigUI.java @@ -45,6 +45,7 @@ public class AltosConfigUI JLabel apogee_delay_label; JLabel radio_channel_label; JLabel radio_calibration_label; + JLabel flight_log_max_label; JLabel callsign_label; public boolean dirty; @@ -57,6 +58,7 @@ public class AltosConfigUI JComboBox apogee_delay_value; JComboBox radio_channel_value; JTextField radio_calibration_value; + JComboBox flight_log_max_value; JTextField callsign_value; JButton save; @@ -75,6 +77,12 @@ public class AltosConfigUI "0", "1", "2", "3", "4", "5" }; + static String[] flight_log_max_values = { + "64", "128", "192", "256", "320", + "384", "448", "512", "576", "640", + "704", "768", "832", "896", "960", + }; + static String[] radio_channel_values = new String[10]; { for (int i = 0; i <= 9; i++) @@ -296,9 +304,33 @@ public class AltosConfigUI callsign_value.getDocument().addDocumentListener(this); pane.add(callsign_value, c); - /* Buttons */ + /* Flight log max */ c = new GridBagConstraints(); c.gridx = 0; c.gridy = 8; + c.gridwidth = 4; + c.fill = GridBagConstraints.NONE; + c.anchor = GridBagConstraints.LINE_START; + c.insets = il; + c.ipady = 5; + flight_log_max_label = new JLabel("Maximum Flight Log Size:"); + pane.add(flight_log_max_label, c); + + c = new GridBagConstraints(); + c.gridx = 4; c.gridy = 8; + c.gridwidth = 4; + c.fill = GridBagConstraints.HORIZONTAL; + c.weightx = 1; + c.anchor = GridBagConstraints.LINE_START; + c.insets = ir; + c.ipady = 5; + flight_log_max_value = new JComboBox(flight_log_max_values); + flight_log_max_value.setEditable(true); + flight_log_max_value.addItemListener(this); + pane.add(flight_log_max_value, c); + + /* Buttons */ + c = new GridBagConstraints(); + c.gridx = 0; c.gridy = 9; c.gridwidth = 2; c.fill = GridBagConstraints.NONE; c.anchor = GridBagConstraints.LINE_START; @@ -309,7 +341,7 @@ public class AltosConfigUI save.setActionCommand("Save"); c = new GridBagConstraints(); - c.gridx = 2; c.gridy = 8; + c.gridx = 2; c.gridy = 9; c.gridwidth = 2; c.fill = GridBagConstraints.NONE; c.anchor = GridBagConstraints.CENTER; @@ -320,7 +352,7 @@ public class AltosConfigUI reset.setActionCommand("Reset"); c = new GridBagConstraints(); - c.gridx = 4; c.gridy = 8; + c.gridx = 4; c.gridy = 9; c.gridwidth = 2; c.fill = GridBagConstraints.NONE; c.anchor = GridBagConstraints.CENTER; @@ -331,7 +363,7 @@ public class AltosConfigUI reboot.setActionCommand("Reboot"); c = new GridBagConstraints(); - c.gridx = 6; c.gridy = 8; + c.gridx = 6; c.gridy = 9; c.gridwidth = 2; c.fill = GridBagConstraints.NONE; c.anchor = GridBagConstraints.LINE_END; @@ -459,8 +491,17 @@ public class AltosConfigUI return callsign_value.getText(); } + public void set_flight_log_max(int new_flight_log_max) { + if (new_flight_log_max == 0) + flight_log_max_value.setEnabled(false); + flight_log_max_value.setSelectedItem(Integer.toString(new_flight_log_max)); + } + + public int flight_log_max() { + return Integer.parseInt(flight_log_max_value.getSelectedItem().toString()); + } + public void set_clean() { dirty = false; } - - }
\ No newline at end of file +} |