diff options
Diffstat (limited to 'altosui/AltosConfigUI.java')
| -rw-r--r-- | altosui/AltosConfigUI.java | 54 | 
1 files changed, 50 insertions, 4 deletions
| diff --git a/altosui/AltosConfigUI.java b/altosui/AltosConfigUI.java index f835ee2e..6f635b9d 100644 --- a/altosui/AltosConfigUI.java +++ b/altosui/AltosConfigUI.java @@ -46,6 +46,7 @@ public class AltosConfigUI  	JLabel		radio_channel_label;  	JLabel		radio_calibration_label;  	JLabel		flight_log_max_label; +	JLabel		ignite_mode_label;  	JLabel		callsign_label;  	public boolean		dirty; @@ -59,6 +60,7 @@ public class AltosConfigUI  	JComboBox	radio_channel_value;  	JTextField	radio_calibration_value;  	JComboBox	flight_log_max_value; +	JComboBox	ignite_mode_value;  	JTextField	callsign_value;  	JButton		save; @@ -83,6 +85,12 @@ public class AltosConfigUI  		"704", "768", "832", "896", "960",  	}; +	static String[] ignite_mode_values = { +		"Dual Deploy", +		"Redundant Apogee", +		"Redundant Main", +	}; +  	static String[] radio_channel_values = new String[10];  		{  			for (int i = 0; i <= 9; i++) @@ -326,9 +334,33 @@ public class AltosConfigUI  		flight_log_max_value.addItemListener(this);  		pane.add(flight_log_max_value, c); -		/* Buttons */ +		/* Ignite mode */  		c = new GridBagConstraints();  		c.gridx = 0; c.gridy = 9; +		c.gridwidth = 4; +		c.fill = GridBagConstraints.NONE; +		c.anchor = GridBagConstraints.LINE_START; +		c.insets = il; +		c.ipady = 5; +		ignite_mode_label = new JLabel("Igniter Firing Mode:"); +		pane.add(ignite_mode_label, c); + +		c = new GridBagConstraints(); +		c.gridx = 4; c.gridy = 9; +		c.gridwidth = 4; +		c.fill = GridBagConstraints.HORIZONTAL; +		c.weightx = 1; +		c.anchor = GridBagConstraints.LINE_START; +		c.insets = ir; +		c.ipady = 5; +		ignite_mode_value = new JComboBox(ignite_mode_values); +		ignite_mode_value.setEditable(false); +		ignite_mode_value.addItemListener(this); +		pane.add(ignite_mode_value, c); + +		/* Buttons */ +		c = new GridBagConstraints(); +		c.gridx = 0; c.gridy = 10;  		c.gridwidth = 2;  		c.fill = GridBagConstraints.NONE;  		c.anchor = GridBagConstraints.LINE_START; @@ -339,7 +371,7 @@ public class AltosConfigUI  		save.setActionCommand("Save");  		c = new GridBagConstraints(); -		c.gridx = 2; c.gridy = 9; +		c.gridx = 2; c.gridy = 10;  		c.gridwidth = 2;  		c.fill = GridBagConstraints.NONE;  		c.anchor = GridBagConstraints.CENTER; @@ -350,7 +382,7 @@ public class AltosConfigUI  		reset.setActionCommand("Reset");  		c = new GridBagConstraints(); -		c.gridx = 4; c.gridy = 9; +		c.gridx = 4; c.gridy = 10;  		c.gridwidth = 2;  		c.fill = GridBagConstraints.NONE;  		c.anchor = GridBagConstraints.CENTER; @@ -361,7 +393,7 @@ public class AltosConfigUI  		reboot.setActionCommand("Reboot");  		c = new GridBagConstraints(); -		c.gridx = 6; c.gridy = 9; +		c.gridx = 6; c.gridy = 10;  		c.gridwidth = 2;  		c.fill = GridBagConstraints.NONE;  		c.anchor = GridBagConstraints.LINE_END; @@ -499,6 +531,20 @@ public class AltosConfigUI  		return Integer.parseInt(flight_log_max_value.getSelectedItem().toString());  	} +	public void set_ignite_mode(int new_ignite_mode) { +		if (new_ignite_mode < 0) { +			ignite_mode_value.setEnabled(false); +			new_ignite_mode = 0; +		} else { +			ignite_mode_value.setEnabled(true); +		} +		ignite_mode_value.setSelectedItem(Integer.toString(new_ignite_mode)); +	} + +	public int ignite_mode() { +		return ignite_mode_value.getSelectedIndex(); +	} +  	public void set_clean() {  		dirty = false;  	} | 
