summaryrefslogtreecommitdiff
path: root/altosdroid/src
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2015-07-11 22:17:16 -0700
committerKeith Packard <keithp@keithp.com>2015-07-11 22:17:16 -0700
commitc4af5cb233013b35d6763f5adf8d11b47f847111 (patch)
treec60ff0575dc4c0d061523ce466be36c49c57342e /altosdroid/src
parent251263f72a1c189aac709d3d0410eb916a9f66d6 (diff)
altosdroid: Clean up tab layout
Fuss with weights and gravitys, then add some wrapping layouts to get things looking reasonable on small and larger screens. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altosdroid/src')
-rw-r--r--altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java13
-rw-r--r--altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java27
-rw-r--r--altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java45
3 files changed, 33 insertions, 52 deletions
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java b/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java
index 267c90f8..6cecbdf1 100644
--- a/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java
+++ b/altosdroid/src/org/altusmetrum/AltosDroid/GoNoGoLights.java
@@ -52,27 +52,14 @@ public class GoNoGoLights {
missing = m;
set = true;
if (missing) {
- hide();
red.setImageDrawable(dGray);
green.setImageDrawable(dGray);
} else if (state) {
red.setImageDrawable(dGray);
green.setImageDrawable(dGreen);
- show();
} else {
red.setImageDrawable(dRed);
green.setImageDrawable(dGray);
- show();
}
}
-
- public void show() {
- red.setVisibility(View.VISIBLE);
- green.setVisibility(View.VISIBLE);
- }
-
- public void hide() {
- red.setVisibility(View.GONE);
- green.setVisibility(View.GONE);
- }
}
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java b/altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java
index e0d49a1c..a02ae3a2 100644
--- a/altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java
+++ b/altosdroid/src/org/altusmetrum/AltosDroid/TabFlight.java
@@ -22,11 +22,8 @@ import org.altusmetrum.altoslib_7.*;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ImageView;
-import android.widget.TextView;
+import android.view.*;
+import android.widget.*;
import android.location.Location;
public class TabFlight extends AltosDroidTab {
@@ -41,9 +38,11 @@ public class TabFlight extends AltosDroidTab {
private TextView distance_view;
private TextView latitude_view;
private TextView longitude_view;
+ private View apogee_view;
private TextView apogee_voltage_view;
private TextView apogee_voltage_label;
private GoNoGoLights apogee_lights;
+ private View main_view;
private TextView main_voltage_view;
private TextView main_voltage_label;
private GoNoGoLights main_lights;
@@ -64,12 +63,14 @@ public class TabFlight extends AltosDroidTab {
latitude_view = (TextView) v.findViewById(R.id.lat_value);
longitude_view = (TextView) v.findViewById(R.id.lon_value);
+ apogee_view = v.findViewById(R.id.apogee_view);
apogee_voltage_view = (TextView) v.findViewById(R.id.apogee_voltage_value);
apogee_lights = new GoNoGoLights((ImageView) v.findViewById(R.id.apogee_redled),
(ImageView) v.findViewById(R.id.apogee_greenled),
getResources());
apogee_voltage_label = (TextView) v.findViewById(R.id.apogee_voltage_label);
+ main_view = v.findViewById(R.id.main_view);
main_voltage_view = (TextView) v.findViewById(R.id.main_voltage_value);
main_lights = new GoNoGoLights((ImageView) v.findViewById(R.id.main_redled),
(ImageView) v.findViewById(R.id.main_greenled),
@@ -106,27 +107,19 @@ public class TabFlight extends AltosDroidTab {
}
if (state.apogee_voltage == AltosLib.MISSING) {
- apogee_voltage_view.setVisibility(View.GONE);
- apogee_voltage_label.setVisibility(View.GONE);
- apogee_lights.hide();
+ apogee_view.setVisibility(View.GONE);
} else {
apogee_voltage_view.setText(AltosDroid.number("%4.2f V", state.apogee_voltage));
- apogee_voltage_view.setVisibility(View.VISIBLE);
- apogee_voltage_label.setVisibility(View.VISIBLE);
apogee_lights.set(state.apogee_voltage > 3.2, state.apogee_voltage == AltosLib.MISSING);
- apogee_lights.show();
+ apogee_view.setVisibility(View.VISIBLE);
}
if (state.main_voltage == AltosLib.MISSING) {
- main_voltage_view.setVisibility(View.GONE);
- main_voltage_label.setVisibility(View.GONE);
- main_lights.hide();
+ main_view.setVisibility(View.GONE);
} else {
main_voltage_view.setText(AltosDroid.number("%4.2f V", state.main_voltage));
- main_voltage_view.setVisibility(View.VISIBLE);
- main_voltage_label.setVisibility(View.VISIBLE);
main_lights.set(state.main_voltage > 3.2, state.main_voltage == AltosLib.MISSING);
- main_lights.show();
+ main_view.setVisibility(View.VISIBLE);
}
}
}
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java b/altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java
index f6204547..5ff9d12b 100644
--- a/altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java
+++ b/altosdroid/src/org/altusmetrum/AltosDroid/TabPad.java
@@ -22,25 +22,25 @@ import org.altusmetrum.altoslib_7.*;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ImageView;
-import android.widget.TextView;
+import android.view.*;
+import android.widget.*;
import android.location.Location;
public class TabPad extends AltosDroidTab {
private TextView battery_voltage_view;
private GoNoGoLights battery_lights;
+ private TableRow receiver_row;
private TextView receiver_voltage_view;
private TextView receiver_voltage_label;
private GoNoGoLights receiver_voltage_lights;
+ private TableRow apogee_row;
private TextView apogee_voltage_view;
private TextView apogee_voltage_label;
private GoNoGoLights apogee_lights;
+ private TableRow main_row;
private TextView main_voltage_view;
private TextView main_voltage_label;
private GoNoGoLights main_lights;
@@ -58,6 +58,7 @@ public class TabPad extends AltosDroidTab {
private TextView receiver_longitude_view;
private TextView receiver_altitude_view;
+ private TableRow[] ignite_row = new TableRow[4];
private TextView[] ignite_voltage_view = new TextView[4];
private TextView[] ignite_voltage_label = new TextView[4];
private GoNoGoLights[] ignite_lights = new GoNoGoLights[4];
@@ -71,18 +72,21 @@ public class TabPad extends AltosDroidTab {
(ImageView) v.findViewById(R.id.battery_greenled),
getResources());
+ receiver_row = (TableRow) v.findViewById(R.id.receiver_row);
receiver_voltage_view = (TextView) v.findViewById(R.id.receiver_voltage_value);
receiver_voltage_label = (TextView) v.findViewById(R.id.receiver_voltage_label);
receiver_voltage_lights = new GoNoGoLights((ImageView) v.findViewById(R.id.receiver_redled),
(ImageView) v.findViewById(R.id.receiver_greenled),
getResources());
+ apogee_row = (TableRow) v.findViewById(R.id.apogee_row);
apogee_voltage_view = (TextView) v.findViewById(R.id.apogee_voltage_value);
apogee_voltage_label = (TextView) v.findViewById(R.id.apogee_voltage_label);
apogee_lights = new GoNoGoLights((ImageView) v.findViewById(R.id.apogee_redled),
(ImageView) v.findViewById(R.id.apogee_greenled),
getResources());
+ main_row = (TableRow) v.findViewById(R.id.main_row);
main_voltage_view = (TextView) v.findViewById(R.id.main_voltage_value);
main_voltage_label = (TextView) v.findViewById(R.id.main_voltage_label);
main_lights = new GoNoGoLights((ImageView) v.findViewById(R.id.main_redled),
@@ -105,35 +109,40 @@ public class TabPad extends AltosDroidTab {
getResources());
for (int i = 0; i < 4; i++) {
- int view_id, label_id, lights_id;
+ int row_id, view_id, label_id, lights_id;
int red_id, green_id;
switch (i) {
case 0:
default:
+ row_id = R.id.ignite_a_row;
view_id = R.id.ignite_a_voltage_value;
label_id = R.id.ignite_a_voltage_label;
red_id = R.id.ignite_a_redled;
green_id = R.id.ignite_a_greenled;
break;
case 1:
+ row_id = R.id.ignite_b_row;
view_id = R.id.ignite_b_voltage_value;
label_id = R.id.ignite_b_voltage_label;
red_id = R.id.ignite_b_redled;
green_id = R.id.ignite_b_greenled;
break;
case 2:
+ row_id = R.id.ignite_c_row;
view_id = R.id.ignite_c_voltage_value;
label_id = R.id.ignite_c_voltage_label;
red_id = R.id.ignite_c_redled;
green_id = R.id.ignite_c_greenled;
break;
case 3:
+ row_id = R.id.ignite_d_row;
view_id = R.id.ignite_d_voltage_value;
label_id = R.id.ignite_d_voltage_label;
red_id = R.id.ignite_d_redled;
green_id = R.id.ignite_d_greenled;
break;
}
+ ignite_row[i] = (TableRow) v.findViewById(row_id);
ignite_voltage_view[i] = (TextView) v.findViewById(view_id);
ignite_voltage_label[i] = (TextView) v.findViewById(label_id);
ignite_lights[i] = new GoNoGoLights((ImageView) v.findViewById(red_id),
@@ -154,21 +163,17 @@ public class TabPad extends AltosDroidTab {
battery_voltage_view.setText(AltosDroid.number(" %4.2f V", state.battery_voltage));
battery_lights.set(state.battery_voltage >= AltosLib.ao_battery_good, state.battery_voltage == AltosLib.MISSING);
if (state.apogee_voltage == AltosLib.MISSING) {
- apogee_voltage_view.setVisibility(View.GONE);
- apogee_voltage_label.setVisibility(View.GONE);
+ apogee_row.setVisibility(View.GONE);
} else {
apogee_voltage_view.setText(AltosDroid.number(" %4.2f V", state.apogee_voltage));
- apogee_voltage_view.setVisibility(View.VISIBLE);
- apogee_voltage_label.setVisibility(View.VISIBLE);
+ apogee_row.setVisibility(View.VISIBLE);
}
apogee_lights.set(state.apogee_voltage >= AltosLib.ao_igniter_good, state.apogee_voltage == AltosLib.MISSING);
if (state.main_voltage == AltosLib.MISSING) {
- main_voltage_view.setVisibility(View.GONE);
- main_voltage_label.setVisibility(View.GONE);
+ main_row.setVisibility(View.GONE);
} else {
main_voltage_view.setText(AltosDroid.number(" %4.2f V", state.main_voltage));
- main_voltage_view.setVisibility(View.VISIBLE);
- main_voltage_label.setVisibility(View.VISIBLE);
+ main_row.setVisibility(View.VISIBLE);
}
main_lights.set(state.main_voltage >= AltosLib.ao_igniter_good, state.main_voltage == AltosLib.MISSING);
@@ -177,12 +182,10 @@ public class TabPad extends AltosDroidTab {
for (int i = 0; i < 4; i++) {
double voltage = i >= num_igniter ? AltosLib.MISSING : state.ignitor_voltage[i];
if (voltage == AltosLib.MISSING) {
- ignite_voltage_view[i].setVisibility(View.GONE);
- ignite_voltage_label[i].setVisibility(View.GONE);
+ ignite_row[i].setVisibility(View.GONE);
} else {
ignite_voltage_view[i].setText(AltosDroid.number(" %4.2f V", voltage));
- ignite_voltage_view[i].setVisibility(View.VISIBLE);
- ignite_voltage_label[i].setVisibility(View.VISIBLE);
+ ignite_row[i].setVisibility(View.VISIBLE);
}
ignite_lights[i].set(voltage >= AltosLib.ao_igniter_good, voltage == AltosLib.MISSING);
}
@@ -215,12 +218,10 @@ public class TabPad extends AltosDroidTab {
if (telem_state != null) {
if (telem_state.receiver_battery == AltosLib.MISSING) {
- receiver_voltage_view.setVisibility(View.GONE);
- receiver_voltage_label.setVisibility(View.GONE);
+ receiver_row.setVisibility(View.GONE);
} else {
receiver_voltage_view.setText(AltosDroid.number(" %4.2f V", telem_state.receiver_battery));
- receiver_voltage_view.setVisibility(View.VISIBLE);
- receiver_voltage_label.setVisibility(View.VISIBLE);
+ receiver_row.setVisibility(View.VISIBLE);
}
receiver_voltage_lights.set(telem_state.receiver_battery >= AltosLib.ao_battery_good, telem_state.receiver_battery == AltosLib.MISSING);
}