summaryrefslogtreecommitdiff
path: root/altosui/AltosConfigUI.java
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2011-08-14 00:00:54 -0700
committerKeith Packard <keithp@keithp.com>2011-08-14 00:00:54 -0700
commitef7f60df841f1eb22b9cec0d7f68cf2c003d6b30 (patch)
tree58d45a81455dc5dea3ad0465aff550f668c52752 /altosui/AltosConfigUI.java
parent746d6a472a20243a8c0eacc8edf8e81e0641bc17 (diff)
altosui: Respect storage limits in flight log max config0.9.6.0
Compute the maximum flight log using the data returned from the 'f' command (total storage and erase block size). Limit menu to choices which fall within this limit, complain if the user asks for too big a value. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altosui/AltosConfigUI.java')
-rw-r--r--altosui/AltosConfigUI.java22
1 files changed, 20 insertions, 2 deletions
diff --git a/altosui/AltosConfigUI.java b/altosui/AltosConfigUI.java
index 71664c91..63e0ba78 100644
--- a/altosui/AltosConfigUI.java
+++ b/altosui/AltosConfigUI.java
@@ -577,6 +577,18 @@ public class AltosConfigUI
return Integer.parseInt(flight_log_max_value.getSelectedItem().toString());
}
+ public void set_flight_log_max_limit(int flight_log_max_limit) {
+ boolean any_added = false;
+ flight_log_max_value.removeAllItems();
+ for (int i = 0; i < flight_log_max_values.length; i++) {
+ if (Integer.parseInt(flight_log_max_values[i]) < flight_log_max_limit){
+ flight_log_max_value.addItem(flight_log_max_values[i]);
+ any_added = true;
+ }
+ }
+ flight_log_max_value.addItem(String.format("%d", flight_log_max_limit));
+ }
+
public void set_ignite_mode(int new_ignite_mode) {
if (new_ignite_mode < 0) {
ignite_mode_value.setEnabled(false);
@@ -588,7 +600,10 @@ public class AltosConfigUI
}
public int ignite_mode() {
- return ignite_mode_value.getSelectedIndex();
+ if (ignite_mode_value.isEnabled())
+ return ignite_mode_value.getSelectedIndex();
+ else
+ return -1;
}
@@ -603,7 +618,10 @@ public class AltosConfigUI
}
public int pad_orientation() {
- return pad_orientation_value.getSelectedIndex();
+ if (pad_orientation_value.isEnabled())
+ return pad_orientation_value.getSelectedIndex();
+ else
+ return -1;
}
public void set_clean() {