altosdroid: Update tab contents before switching
[fw/altos] / altosdroid / src / org / altusmetrum / AltosDroid / TabLanded.java
index 40399f2aed0df4d0fe31ad6e5fec78c0fb814d45..32c235e1b627dfbb0a2dbc48f94034cf2b94550c 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.altusmetrum.AltosDroid;
 
-import org.altusmetrum.altoslib_2.*;
+import org.altusmetrum.altoslib_5.*;
 
 import android.app.Activity;
 import android.os.Bundle;
@@ -28,7 +28,7 @@ import android.view.ViewGroup;
 import android.widget.TextView;
 import android.location.Location;
 
-public class TabLanded extends Fragment implements AltosDroidTab {
+public class TabLanded extends AltosDroidTab {
        AltosDroid mAltosDroid;
 
        private TextView mBearingView;
@@ -73,7 +73,9 @@ public class TabLanded extends Fragment implements AltosDroidTab {
                mAltosDroid = null;
        }
 
-       public void update_ui(AltosState state, AltosGreatCircle from_receiver, Location receiver) {
+       public String tab_name() { return "landed"; }
+
+       public void show(AltosState state, AltosGreatCircle from_receiver, Location receiver) {
                if (from_receiver != null) {
                        mBearingView.setText(String.format("%3.0f°", from_receiver.bearing));
                        mDistanceView.setText(String.format("%6.0f m", from_receiver.distance));
@@ -87,12 +89,14 @@ public class TabLanded extends Fragment implements AltosDroidTab {
                        mReceiverLatitudeView.setText(AltosDroid.pos(receiver.getLatitude(), "N", "S"));
                        mReceiverLongitudeView.setText(AltosDroid.pos(receiver.getLongitude(), "W", "E"));
                }
-              
+
                if (state != null) {
                        mMaxHeightView.setText(String.format("%6.0f m", state.max_height()));
-                       mMaxAccelView.setText(String.format("%6.0f m/s²", state.max_acceleration()));
+                       if (state.max_acceleration() != AltosLib.MISSING)
+                               mMaxAccelView.setText(String.format("%6.0f m/s²", state.max_acceleration()));
+                       else
+                               mMaxAccelView.setText("missing");
                        mMaxSpeedView.setText(String.format("%6.0f m/s", state.max_speed()));
                }
        }
-
 }