package com.openvehicles.OVMS;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.SeekBar;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import android.widget.Toast;
import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
public class TabInfo_xlarge extends MapActivity {
private final int CAR_MARKER_ANIMATION_DURATION_MS = 2000;
private final int CAR_MARKER_ANIMATION_FRAMES = 40;
public int CurrentScreenOrientation;
private Bitmap DirectionalMarker;
private final int LABEL_SHADOW_XY = 1;
private final int LABEL_TEXT_SIZE = 20;
private Runnable animateCarMarker = new Runnable() {
public void run() {
String str1 = "-";
if (TabInfo_xlarge.this.data.Data_LastCarUpdate != null)
str1 = new SimpleDateFormat("MMM d, K:mm:ss a")
.format(TabInfo_xlarge.this.data.Data_LastCarUpdate);
GeoPoint localGeoPoint1 = Utilities
.GetCarGeopoint(TabInfo_xlarge.this.data);
int i = (localGeoPoint1.getLatitudeE6() - TabInfo_xlarge.this.lastCarGeoPoint
.getLatitudeE6()) / 40;
int j = (localGeoPoint1.getLongitudeE6() - TabInfo_xlarge.this.lastCarGeoPoint
.getLongitudeE6()) / 40;
if (TabInfo_xlarge.this.carMarkerAnimationFrame == 39)
;
for (GeoPoint localGeoPoint2 = localGeoPoint1;; localGeoPoint2 = new GeoPoint(
TabInfo_xlarge.this.lastCarGeoPoint.getLatitudeE6() + i
* TabInfo_xlarge.this.carMarkerAnimationFrame,
TabInfo_xlarge.this.lastCarGeoPoint.getLongitudeE6() + j
* TabInfo_xlarge.this.carMarkerAnimationFrame)) {
String str2 = TabInfo_xlarge.this.data.VehicleID;
Object[] arrayOfObject = new Object[1];
arrayOfObject[0] = str1;
Utilities.CarMarker localCarMarker = new Utilities.CarMarker(
localGeoPoint2, str2, String.format(
"Last reported: %s", arrayOfObject),
(int) TabInfo_xlarge.this.data.Data_Direction);
TabInfo_xlarge.this.carMarkers.setOverlay(0, localCarMarker);
TabInfo_xlarge.this.mapView.invalidate();
TabInfo_xlarge localTabInfo_xlarge = TabInfo_xlarge.this;
int k = 1 + localTabInfo_xlarge.carMarkerAnimationFrame;
localTabInfo_xlarge.carMarkerAnimationFrame = k;
if (k < 40)
TabInfo_xlarge.this.carMarkerAnimationTimerHandler
.postDelayed(TabInfo_xlarge.this.animateCarMarker,
50L);
return;
}
}
};
private int carMarkerAnimationFrame = 0;
private Handler carMarkerAnimationTimerHandler = new Handler();
private Utilities.CarMarkerOverlay carMarkers;
private String currentVehicleID;
private CarData data;
private ProgressDialog downloadProgress;
private ServerCommands.CarLayoutDownloader downloadTask;
private Handler handler = new Handler() {
public void handleMessage(Message paramAnonymousMessage) {
TabInfo_xlarge.this.updateLastUpdatedView();
TabInfo_xlarge.this.updateInfoUI();
TabInfo_xlarge.this.updateCarLayoutUI();
TabInfo_xlarge.this.updateMapUI();
}
};
private boolean isLoggedIn;
private GeoPoint lastCarGeoPoint;
private Runnable lastUpdateTimer = new Runnable() {
public void run() {
TabInfo_xlarge.this.updateLastUpdatedView();
TabInfo_xlarge.this.lastUpdateTimerHandler.postDelayed(
TabInfo_xlarge.this.lastUpdateTimer, 5000L);
}
};
private Handler lastUpdateTimerHandler = new Handler();
private AlertDialog lastUpdatedDialog;
private List<Overlay> mapOverlays;
private MapView mapView;
private MapController mc;
private Handler orientationChangedHandler = new Handler() {
public void handleMessage(Message paramAnonymousMessage) {
Log.d("Tab", "Relayout TabInfo_xlarge activity");
TabInfo_xlarge.this.CurrentScreenOrientation = TabInfo_xlarge.this
.getResources().getConfiguration().orientation;
TableLayout localTableLayout = (TableLayout) TabInfo_xlarge.this
.findViewById(2131296345);
LinearLayout localLinearLayout;
if (TabInfo_xlarge.this.CurrentScreenOrientation == 2) {
localTableLayout.setLayoutParams(new LinearLayout.LayoutParams(
-2, -2));
localTableLayout.invalidate();
localLinearLayout = (LinearLayout) TabInfo_xlarge.this
.findViewById(2131296380);
if (TabInfo_xlarge.this.CurrentScreenOrientation != 1)
break label132;
}
label132: for (int i = 8;; i = 0) {
localLinearLayout.setVisibility(i);
localLinearLayout.invalidate();
return;
localTableLayout.setLayoutParams(new LinearLayout.LayoutParams(
240, -2));
break;
}
}
};
private AlertDialog softwareInformation;
private void downloadLayout() {
this.downloadProgress = new ProgressDialog(this);
this.downloadProgress.setMessage("Downloading Hi-Res Graphics");
this.downloadProgress.setIndeterminate(true);
this.downloadProgress.setMax(100);
this.downloadProgress.setCancelable(true);
this.downloadProgress.setProgressStyle(1);
this.downloadProgress.show();
this.downloadProgress
.setOnDismissListener(new DialogInterface.OnDismissListener() {
public void onDismiss(
DialogInterface paramAnonymousDialogInterface) {
StringBuilder localStringBuilder1 = new StringBuilder(
String.valueOf(TabInfo_xlarge.this
.getCacheDir().getAbsolutePath()));
Object[] arrayOfObject1 = new Object[1];
arrayOfObject1[0] = TabInfo_xlarge.this.data.VehicleImageDrawable;
Bitmap localBitmap1 = BitmapFactory.decodeFile(String
.format("/%s.png", arrayOfObject1));
if (localBitmap1 != null) {
((ImageView) TabInfo_xlarge.this
.findViewById(2131296347))
.setImageBitmap(localBitmap1);
StringBuilder localStringBuilder2 = new StringBuilder(
String.valueOf(TabInfo_xlarge.this
.getCacheDir().getAbsolutePath()));
Object[] arrayOfObject2 = new Object[1];
arrayOfObject2[0] = TabInfo_xlarge.this.data.VehicleImageDrawable;
Bitmap localBitmap2 = BitmapFactory
.decodeFile(String.format("/ol_%s.png",
arrayOfObject2));
if (localBitmap2 != null)
((ImageView) TabInfo_xlarge.this
.findViewById(2131296359))
.setImageBitmap(localBitmap2);
Toast.makeText(TabInfo_xlarge.this,
"Graphics Downloaded", 0).show();
}
while (true) {
return;
Toast.makeText(TabInfo_xlarge.this,
"Download Failed", 0).show();
}
}
});
this.downloadTask = new ServerCommands.CarLayoutDownloader(
this.downloadProgress);
ServerCommands.CarLayoutDownloader localCarLayoutDownloader = this.downloadTask;
String[] arrayOfString = new String[2];
arrayOfString[0] = this.data.VehicleImageDrawable;
arrayOfString[1] = getCacheDir().getAbsolutePath();
localCarLayoutDownloader.execute(arrayOfString);
}
private void initCarLayoutUI() {
((TextView) findViewById(2131296343))
.setOnClickListener(new View.OnClickListener() {
public void onClick(View paramAnonymousView) {
String str = "-";
if ((TabInfo_xlarge.this.data != null)
&& (TabInfo_xlarge.this.data.Data_LastCarUpdate != null))
str = new SimpleDateFormat("MMM d, K:mm:ss a")
.format(TabInfo_xlarge.this.data.Data_LastCarUpdate);
AlertDialog.Builder localBuilder = new AlertDialog.Builder(
TabInfo_xlarge.this);
localBuilder
.setMessage("Last update: " + str)
.setCancelable(true)
.setPositiveButton("Close",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface paramAnonymous2DialogInterface,
int paramAnonymous2Int) {
paramAnonymous2DialogInterface
.dismiss();
}
})
.setTitle(TabInfo_xlarge.this.data.VehicleID);
TabInfo_xlarge.this.lastUpdatedDialog = localBuilder
.create();
TabInfo_xlarge.this.lastUpdatedDialog.show();
}
});
((FrameLayout) findViewById(2131296378))
.setOnClickListener(new View.OnClickListener() {
public void onClick(View paramAnonymousView) {
if (TabInfo_xlarge.this.isFinishing())
return;
TabInfo_xlarge localTabInfo_xlarge = TabInfo_xlarge.this;
OVMSActivity localOVMSActivity = (OVMSActivity) TabInfo_xlarge.this
.getParent();
if (TabInfo_xlarge.this.data.Data_CarLocked)
;
for (boolean bool = false;; bool = true) {
ServerCommands.LockUnlockCar(localTabInfo_xlarge,
localOVMSActivity, null, bool);
break;
}
}
});
((FrameLayout) findViewById(2131296379))
.setOnClickListener(new View.OnClickListener() {
public void onClick(View paramAnonymousView) {
if (TabInfo_xlarge.this.isFinishing())
return;
TabInfo_xlarge localTabInfo_xlarge = TabInfo_xlarge.this;
OVMSActivity localOVMSActivity = (OVMSActivity) TabInfo_xlarge.this
.getParent();
if (TabInfo_xlarge.this.data.Data_ValetON)
;
for (boolean bool = false;; bool = true) {
ServerCommands.ValetModeOnOff(localTabInfo_xlarge,
localOVMSActivity, null, bool);
break;
}
}
});
((LinearLayout) findViewById(2131296380))
.setOnClickListener(new View.OnClickListener() {
public void onClick(View paramAnonymousView) {
if ((TabInfo_xlarge.this.isFinishing())
|| (TabInfo_xlarge.this.data.Data_CoolingPumpON_DoorState3))
;
while (true) {
return;
ServerCommands.WakeUp(TabInfo_xlarge.this,
(OVMSActivity) TabInfo_xlarge.this
.getParent(), null, true);
}
}
});
}
private void initInfoUI() {
((TextView) findViewById(2131296343))
.setOnClickListener(new View.OnClickListener() {
public void onClick(View paramAnonymousView) {
if (TabInfo_xlarge.this.data.Data_LastCarUpdate != null) {
String str = new SimpleDateFormat(
"MMM d, K:mm:ss a")
.format(TabInfo_xlarge.this.data.Data_LastCarUpdate);
AlertDialog.Builder localBuilder = new AlertDialog.Builder(
TabInfo_xlarge.this);
localBuilder
.setMessage("Last update: " + str)
.setCancelable(true)
.setPositiveButton(
"Close",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface paramAnonymous2DialogInterface,
int paramAnonymous2Int) {
paramAnonymous2DialogInterface
.dismiss();
}
})
.setTitle(
TabInfo_xlarge.this.data.VehicleID);
TabInfo_xlarge.this.lastUpdatedDialog = localBuilder
.create();
TabInfo_xlarge.this.lastUpdatedDialog.show();
}
}
});
((TextView) findViewById(2131296340))
.setOnClickListener(new View.OnClickListener() {
public void onClick(View paramAnonymousView) {
if (TabInfo_xlarge.this.data.Data_ParkedTime != null) {
String str = new SimpleDateFormat(
"MMM d, K:mm:ss a")
.format(TabInfo_xlarge.this.data.Data_ParkedTime);
AlertDialog.Builder localBuilder = new AlertDialog.Builder(
TabInfo_xlarge.this);
localBuilder
.setMessage("Parked since: " + str)
.setCancelable(true)
.setPositiveButton(
"Close",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface paramAnonymous2DialogInterface,
int paramAnonymous2Int) {
paramAnonymous2DialogInterface
.dismiss();
}
})
.setTitle(
TabInfo_xlarge.this.data.VehicleID);
TabInfo_xlarge.this.lastUpdatedDialog = localBuilder
.create();
TabInfo_xlarge.this.lastUpdatedDialog.show();
}
}
});
((TextView) findViewById(2131296351))
.setOnClickListener(new View.OnClickListener() {
public void onClick(View paramAnonymousView) {
ServerCommands.SetChargeMode(TabInfo_xlarge.this,
(OVMSActivity) TabInfo_xlarge.this.getParent(),
null);
}
});
((TextView) findViewById(2131296356))
.setOnClickListener(new View.OnClickListener() {
public void onClick(View paramAnonymousView) {
ServerCommands.SetChargeCurrent(TabInfo_xlarge.this,
(OVMSActivity) TabInfo_xlarge.this.getParent(),
null,
TabInfo_xlarge.this.data.Data_ChargeAmpsLimit);
}
});
((SeekBar) findViewById(2131296352))
.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
public void onProgressChanged(
SeekBar paramAnonymousSeekBar,
int paramAnonymousInt, boolean paramAnonymousBoolean) {
paramAnonymousSeekBar.setProgress(paramAnonymousInt);
}
public void onStartTrackingTouch(
SeekBar paramAnonymousSeekBar) {
}
public void onStopTrackingTouch(
final SeekBar paramAnonymousSeekBar) {
int i = 0;
if (paramAnonymousSeekBar.getProgress() < 25) {
paramAnonymousSeekBar.setProgress(0);
if (TabInfo_xlarge.this.data.Data_Charging)
Toast.makeText(TabInfo_xlarge.this,
"Already charging...", 0).show();
}
while (true) {
return;
ServerCommands
.StartCharge(
TabInfo_xlarge.this,
(OVMSActivity) TabInfo_xlarge.this
.getParent(), null)
.setOnCancelListener(
new DialogInterface.OnCancelListener() {
public void onCancel(
DialogInterface paramAnonymous2DialogInterface) {
paramAnonymousSeekBar
.setProgress(paramAnonymousSeekBar
.getMax());
}
});
continue;
if (paramAnonymousSeekBar.getProgress() <= -25
+ paramAnonymousSeekBar.getMax())
break;
paramAnonymousSeekBar
.setProgress(paramAnonymousSeekBar.getMax());
if (!TabInfo_xlarge.this.data.Data_Charging)
Toast.makeText(TabInfo_xlarge.this,
"Already stopped...", 0).show();
else
ServerCommands
.StopCharge(
TabInfo_xlarge.this,
(OVMSActivity) TabInfo_xlarge.this
.getParent(), null)
.setOnCancelListener(
new DialogInterface.OnCancelListener() {
public void onCancel(
DialogInterface paramAnonymous2DialogInterface) {
paramAnonymousSeekBar
.setProgress(0);
}
});
}
if (TabInfo_xlarge.this.data.Data_Charging)
;
while (true) {
paramAnonymousSeekBar.setProgress(i);
break;
i = 100;
}
}
});
}
private void initMapUI() {
this.mapView = ((MapView) findViewById(2131296385));
this.mc = this.mapView.getController();
this.mapView.setBuiltInZoomControls(true);
this.DirectionalMarker = BitmapFactory.decodeResource(getResources(),
2130837512);
this.mapOverlays = this.mapView.getOverlays();
this.carMarkers = new Utilities.CarMarkerOverlay(getResources()
.getDrawable(2130837534), 20, this, this.DirectionalMarker, 1);
this.mapOverlays.add(0, this.carMarkers);
}
private void updateCarLayoutUI()
{
TextView localTextView1 = (TextView)findViewById(2131296372);
int i;
if (this.data.Data_LeftDoorOpen)
i = 0;
while (true)
{
localTextView1.setVisibility(i);
TextView localTextView2 = (TextView)findViewById(2131296373);
int j;
label52: int k;
label83: int m;
label115: int n;
label147: String str2;
label220: String str1;
label236: int i1;
label290: int i2;
label378: int i3;
label466: int i4;
label554: int i5;
label622: int i6;
label656: int i7;
label737: int i8;
label771: int i9;
label852: int i10;
label886: int i11;
label967: int i12;
label1001: label1136: int i13;
label1161: int i14;
label1193: int i15;
label1225: int i16;
label1257: int i17;
label1289: int i18;
label1323: int i19;
label1357: ImageView localImageView9;
int i20;
if (this.data.Data_RightDoorOpen)
{
j = 0;
localTextView2.setVisibility(j);
TextView localTextView3 = (TextView)findViewById(2131296374);
if (!this.data.Data_ChargePortOpen)
break label1434;
k = 0;
localTextView3.setVisibility(k);
TextView localTextView4 = (TextView)findViewById(2131296376);
if (!this.data.Data_BonnetOpen)
break label1440;
m = 0;
localTextView4.setVisibility(m);
TextView localTextView5 = (TextView)findViewById(2131296375);
if (!this.data.Data_TrunkOpen)
break label1446;
n = 0;
localTextView5.setVisibility(n);
TextView localTextView6 = (TextView)findViewById(2131296377);
if (this.data.Data_Speed <= 0.0D)
break label1460;
Object[] arrayOfObject11 = new Object[2];
arrayOfObject11[0] = Integer.valueOf((int)this.data.Data_Speed);
if (!this.data.Data_DistanceUnit.equals("K"))
break label1452;
str2 = "kph";
arrayOfObject11[1] = str2;
str1 = String.format("%d %s", arrayOfObject11);
localTextView6.setText(str1);
TextView localTextView7 = (TextView)findViewById(2131296381);
if ((!this.data.Data_PEM_Motor_Battery_TemperaturesDataStale) && ((this.data.Data_CarPoweredON) || (this.data.Data_CoolingPumpON_DoorState3)))
break label1468;
i1 = -12303292;
localTextView7.setTextColor(i1);
Object[] arrayOfObject1 = new Object[1];
arrayOfObject1[0] = Integer.valueOf((int)this.data.Data_TemperaturePEM);
localTextView7.setText(String.format("%d�C", arrayOfObject1));
TextView localTextView8 = (TextView)findViewById(2131296382);
if ((!this.data.Data_PEM_Motor_Battery_TemperaturesDataStale) && ((this.data.Data_CarPoweredON) || (this.data.Data_CoolingPumpON_DoorState3)))
break label1475;
i2 = -12303292;
localTextView8.setTextColor(i2);
Object[] arrayOfObject2 = new Object[1];
arrayOfObject2[0] = Integer.valueOf((int)this.data.Data_TemperatureMotor);
localTextView8.setText(String.format("%d�C", arrayOfObject2));
TextView localTextView9 = (TextView)findViewById(2131296383);
if ((!this.data.Data_PEM_Motor_Battery_TemperaturesDataStale) && ((this.data.Data_CarPoweredON) || (this.data.Data_CoolingPumpON_DoorState3)))
break label1482;
i3 = -12303292;
localTextView9.setTextColor(i3);
Object[] arrayOfObject3 = new Object[1];
arrayOfObject3[0] = Integer.valueOf((int)this.data.Data_TemperatureBattery);
localTextView9.setText(String.format("%d�C", arrayOfObject3));
TextView localTextView10 = (TextView)findViewById(2131296384);
if ((!this.data.Data_AmbientTemperatureDataStale) && ((this.data.Data_CarPoweredON) || (this.data.Data_CoolingPumpON_DoorState3)))
break label1489;
i4 = -12303292;
localTextView10.setTextColor(i4);
Object[] arrayOfObject4 = new Object[1];
arrayOfObject4[0] = Integer.valueOf((int)this.data.Data_TemperatureAmbient);
localTextView10.setText(String.format("%d�C", arrayOfObject4));
TextView localTextView11 = (TextView)findViewById(2131296368);
if (!this.data.Data_TPMSDataStale)
break label1496;
i5 = -12303292;
localTextView11.setTextColor(i5);
if ((this.data.Data_FLWheelPressure == 0.0D) && (this.data.Data_FLWheelTemperature == 0.0D))
break label1503;
i6 = 0;
localTextView11.setVisibility(i6);
Object[] arrayOfObject5 = new Object[2];
arrayOfObject5[0] = Double.valueOf(this.data.Data_FLWheelPressure);
arrayOfObject5[1] = Double.valueOf(this.data.Data_FLWheelTemperature);
localTextView11.setText(String.format("%.1fpsi\n%.0f�C", arrayOfObject5));
TextView localTextView12 = (TextView)findViewById(2131296369);
if (!this.data.Data_TPMSDataStale)
break label1509;
i7 = -12303292;
localTextView12.setTextColor(i7);
if ((this.data.Data_FRWheelPressure == 0.0D) && (this.data.Data_FRWheelTemperature == 0.0D))
break label1516;
i8 = 0;
localTextView12.setVisibility(i8);
Object[] arrayOfObject6 = new Object[2];
arrayOfObject6[0] = Double.valueOf(this.data.Data_FRWheelPressure);
arrayOfObject6[1] = Double.valueOf(this.data.Data_FRWheelTemperature);
localTextView12.setText(String.format("%.1fpsi\n%.0f�C", arrayOfObject6));
TextView localTextView13 = (TextView)findViewById(2131296370);
if (!this.data.Data_TPMSDataStale)
break label1522;
i9 = -12303292;
localTextView13.setTextColor(i9);
if ((this.data.Data_RLWheelPressure == 0.0D) && (this.data.Data_RLWheelTemperature == 0.0D))
break label1529;
i10 = 0;
localTextView13.setVisibility(i10);
Object[] arrayOfObject7 = new Object[2];
arrayOfObject7[0] = Double.valueOf(this.data.Data_RLWheelPressure);
arrayOfObject7[1] = Double.valueOf(this.data.Data_RLWheelTemperature);
localTextView13.setText(String.format("%.1fpsi\n%.0f�C", arrayOfObject7));
TextView localTextView14 = (TextView)findViewById(2131296371);
if (!this.data.Data_TPMSDataStale)
break label1535;
i11 = -12303292;
localTextView14.setTextColor(i11);
if ((this.data.Data_RRWheelPressure == 0.0D) && (this.data.Data_RRWheelTemperature == 0.0D))
break label1542;
i12 = 0;
localTextView14.setVisibility(i12);
Object[] arrayOfObject8 = new Object[2];
arrayOfObject8[0] = Double.valueOf(this.data.Data_RRWheelPressure);
arrayOfObject8[1] = Double.valueOf(this.data.Data_RRWheelTemperature);
localTextView14.setText(String.format("%.1fpsi\n%.0f�C", arrayOfObject8));
ImageView localImageView1 = (ImageView)findViewById(2131296359);
StringBuilder localStringBuilder1 = new StringBuilder(String.valueOf(getCacheDir().getAbsolutePath()));
Object[] arrayOfObject9 = new Object[1];
arrayOfObject9[0] = this.data.VehicleImageDrawable;
Bitmap localBitmap = BitmapFactory.decodeFile(String.format("/ol_%s.png", arrayOfObject9));
if (localBitmap == null)
break label1548;
localImageView1.setImageBitmap(localBitmap);
ImageView localImageView2 = (ImageView)findViewById(2131296360);
if (!this.data.Data_ChargePortOpen)
break label1721;
i13 = 0;
localImageView2.setVisibility(i13);
ImageView localImageView3 = (ImageView)findViewById(2131296363);
if (!this.data.Data_BonnetOpen)
break label1728;
i14 = 0;
localImageView3.setVisibility(i14);
ImageView localImageView4 = (ImageView)findViewById(2131296364);
if (!this.data.Data_LeftDoorOpen)
break label1735;
i15 = 0;
localImageView4.setVisibility(i15);
ImageView localImageView5 = (ImageView)findViewById(2131296362);
if (!this.data.Data_RightDoorOpen)
break label1742;
i16 = 0;
localImageView5.setVisibility(i16);
ImageView localImageView6 = (ImageView)findViewById(2131296361);
if (!this.data.Data_TrunkOpen)
break label1749;
i17 = 0;
localImageView6.setVisibility(i17);
ImageView localImageView7 = (ImageView)findViewById(2131296365);
if (!this.data.Data_CarLocked)
break label1756;
i18 = 2130837563;
localImageView7.setImageResource(i18);
ImageView localImageView8 = (ImageView)findViewById(2131296366);
if (!this.data.Data_ValetON)
break label1764;
i19 = 2130837566;
localImageView8.setImageResource(i19);
localImageView9 = (ImageView)findViewById(2131296367);
if (!this.data.Data_HeadlightsON)
break label1772;
i20 = 0;
label1389: localImageView9.setVisibility(i20);
}
try
{
int i21 = Integer.parseInt(this.data.Data_CarModuleGSMSignalLevel);
if (i21 < 1)
localImageView9.setImageResource(2130837608);
while (true)
{
label1422: return;
i = 4;
break;
j = 4;
break label52;
label1434: k = 4;
break label83;
label1440: m = 4;
break label115;
label1446: n = 4;
break label147;
label1452: str2 = "mph";
break label220;
label1460: str1 = "";
break label236;
label1468: i1 = -1;
break label290;
label1475: i2 = -1;
break label378;
label1482: i3 = -1;
break label466;
label1489: i4 = -1;
break label554;
label1496: i5 = -1;
break label622;
label1503: i6 = 4;
break label656;
label1509: i7 = -1;
break label737;
label1516: i8 = 4;
break label771;
label1522: i9 = -1;
break label852;
label1529: i10 = 4;
break label886;
label1535: i11 = -1;
break label967;
label1542: i12 = 4;
break label1001;
label1548: StringBuilder localStringBuilder2 = new StringBuilder("** File Not Found: ").append(getCacheDir().getAbsolutePath());
Object[] arrayOfObject10 = new Object[1];
arrayOfObject10[0] = this.data.VehicleImageDrawable;
Log.d("OVMS", String.format("/ol_%s.png", arrayOfObject10));
if ((this.data.DontAskLayoutDownload) || ((this.lastUpdatedDialog != null) && (this.lastUpdatedDialog.isShowing())))
break label1136;
this.data.DontAskLayoutDownload = true;
AlertDialog.Builder localBuilder = new AlertDialog.Builder(this);
localBuilder.setMessage("Would you like to download a set of high resolution car images specifically drawn for your car?\n\nThe download is approx. 300KB.\n\nNote: a manual download button is available in the car commands and settings tab.").setTitle("Download Graphics").setCancelable(true).setPositiveButton("Download Now", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface paramAnonymousDialogInterface, int paramAnonymousInt)
{
TabInfo_xlarge.this.downloadLayout();
paramAnonymousDialogInterface.dismiss();
}
}).setNegativeButton("Later", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface paramAnonymousDialogInterface, int paramAnonymousInt)
{
paramAnonymousDialogInterface.dismiss();
}
});
this.lastUpdatedDialog = localBuilder.create();
this.lastUpdatedDialog.show();
break label1136;
label1721: i13 = 8;
break label1161;
label1728: i14 = 8;
break label1193;
label1735: i15 = 8;
break label1225;
label1742: i16 = 8;
break label1257;
label1749: i17 = 8;
break label1289;
label1756: i18 = 2130837564;
break label1323;
label1764: i19 = 2130837565;
break label1357;
label1772: i20 = 8;
break label1389;
if (i21 < 7)
localImageView9.setImageResource(2130837609);
else if (i21 < 14)
localImageView9.setImageResource(2130837610);
else if (i21 < 21)
localImageView9.setImageResource(2130837611);
else if (i21 < 28)
localImageView9.setImageResource(2130837612);
else
localImageView9.setImageResource(2130837613);
}
}
catch (Exception localException)
{
break label1422;
}
}
}
private void updateInfoUI()
{
int i = 8;
((TextView)findViewById(2131296346)).setText(this.data.VehicleID);
TextView localTextView1 = (TextView)findViewById(2131296356);
String str1 = getString(2131099652);
Object[] arrayOfObject1 = new Object[1];
arrayOfObject1[0] = Integer.valueOf(this.data.Data_SOC);
localTextView1.setText(String.format(str1, arrayOfObject1));
TableRow localTableRow;
int m;
if (findViewById(2131296348) != null)
{
localTableRow = (TableRow)findViewById(2131296348);
if (!this.data.Data_ChargePortOpen)
break label617;
m = 0;
}
while (true)
{
localTableRow.setVisibility(m);
SeekBar localSeekBar = (SeekBar)findViewById(2131296352);
TextView localTextView2 = (TextView)findViewById(2131296351);
label187: TextView localTextView3;
ImageView localImageView1;
label280: int j;
label414: ImageView localImageView4;
if (this.data.Data_ChargeState.equals("charging"))
{
Object[] arrayOfObject11 = new Object[1];
arrayOfObject11[0] = this.data.Data_ChargeMode.toUpperCase();
localTextView2.setText(String.format("Charging - %s", arrayOfObject11));
localTextView3 = (TextView)findViewById(2131296350);
localImageView1 = (ImageView)findViewById(2131296354);
if (!this.data.Data_Charging)
break label883;
localSeekBar.setProgress(0);
localImageView1.setVisibility(0);
Object[] arrayOfObject6 = new Object[2];
arrayOfObject6[0] = Integer.valueOf(this.data.Data_ChargeCurrent);
arrayOfObject6[1] = Integer.valueOf(this.data.Data_LineVoltage);
localTextView3.setText(String.format("%sA|%sV", arrayOfObject6));
String str2 = " km";
if ((this.data.Data_DistanceUnit != null) && (!this.data.Data_DistanceUnit.equals("K")))
str2 = " miles";
((TextView)findViewById(2131296358)).setText(this.data.Data_IdealRange + str2);
((TextView)findViewById(2131296357)).setText(this.data.Data_EstimatedRange + str2);
ImageView localImageView2 = (ImageView)findViewById(2131296341);
if (!this.isLoggedIn)
break label932;
j = i;
localImageView2.setVisibility(j);
ImageView localImageView3 = (ImageView)findViewById(2131296342);
if (this.data.ParanoidMode)
i = 0;
localImageView3.setVisibility(i);
localImageView4 = (ImageView)findViewById(2131296344);
}
try
{
int k = Integer.parseInt(this.data.Data_CarModuleGSMSignalLevel);
label489: ImageView localImageView5;
if (k < 1)
{
localImageView4.setImageResource(2130837608);
((ImageView)findViewById(2131296355)).setImageBitmap(Utilities.GetScaledBatteryOverlay(this.data.Data_SOC, BitmapFactory.decodeResource(getResources(), 2130837508)));
localImageView5 = (ImageView)findViewById(2131296347);
StringBuilder localStringBuilder1 = new StringBuilder(String.valueOf(getCacheDir().getAbsolutePath()));
Object[] arrayOfObject4 = new Object[1];
arrayOfObject4[0] = this.data.VehicleImageDrawable;
Bitmap localBitmap = BitmapFactory.decodeFile(String.format("/%s.png", arrayOfObject4));
if (localBitmap == null)
break label1021;
localImageView5.setImageBitmap(localBitmap);
}
while (true)
{
localImageView5.setOnClickListener(new View.OnClickListener()
{
public void onClick(View paramAnonymousView)
{
AlertDialog.Builder localBuilder = new AlertDialog.Builder(TabInfo_xlarge.this);
Object[] arrayOfObject = new Object[10];
String str1;
String str2;
label83: String str3;
label105: String str4;
label127: String str5;
if (TabInfo_xlarge.this.data.Data_CarPoweredON)
{
str1 = "ON";
arrayOfObject[0] = str1;
arrayOfObject[1] = TabInfo_xlarge.this.data.Data_VIN;
arrayOfObject[2] = TabInfo_xlarge.this.data.Data_CarModuleGSMSignalLevel;
if (!TabInfo_xlarge.this.data.Data_HandBrakeApplied)
break label268;
str2 = "ENGAGED";
arrayOfObject[3] = str2;
if (!TabInfo_xlarge.this.data.Data_ValetON)
break label275;
str3 = "ON";
arrayOfObject[4] = str3;
if (!TabInfo_xlarge.this.data.Data_PINLocked)
break label282;
str4 = "ON";
arrayOfObject[5] = str4;
if (!TabInfo_xlarge.this.data.Data_CoolingPumpON_DoorState3)
break label289;
str5 = "ON";
label149: arrayOfObject[6] = str5;
if (!TabInfo_xlarge.this.data.Data_GPSLocked)
break label296;
}
label268: label275: label282: label289: label296: for (String str6 = "LOCKED"; ; str6 = "(searching...)")
{
arrayOfObject[7] = str6;
arrayOfObject[8] = TabInfo_xlarge.this.data.Data_CarModuleFirmwareVersion;
arrayOfObject[9] = TabInfo_xlarge.this.data.Data_OVMSServerFirmwareVersion;
localBuilder.setMessage(String.format("Power: %s\nVIN: %s\nGSM Signal: %s\nHandbrake: %s\nValet: %s\nLock: %s\nCooling Pump: %s\nGPS: %s\n\nCar Module: %s\nOVMS Server: %s", arrayOfObject)).setTitle("Vehicle Information").setCancelable(true).setPositiveButton("Close", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface paramAnonymous2DialogInterface, int paramAnonymous2Int)
{
paramAnonymous2DialogInterface.dismiss();
}
});
TabInfo_xlarge.this.softwareInformation = localBuilder.create();
TabInfo_xlarge.this.softwareInformation.show();
return;
str1 = "OFF";
break;
str2 = "DISENGAGED";
break label83;
str3 = "OFF";
break label105;
str4 = "OFF";
break label127;
str5 = "OFF";
break label149;
}
}
});
return;
label617: m = i;
break;
if (this.data.Data_ChargeState.equals("prepare"))
{
Object[] arrayOfObject10 = new Object[1];
arrayOfObject10[0] = this.data.Data_ChargeMode.toUpperCase();
localTextView2.setText(String.format("Preparing to Charge - %s", arrayOfObject10));
break label187;
}
if (this.data.Data_ChargeState.equals("heating"))
{
Object[] arrayOfObject9 = new Object[1];
arrayOfObject9[0] = this.data.Data_ChargeMode.toUpperCase();
localTextView2.setText(String.format("Pre-Charge Battery Heating - %s", arrayOfObject9));
break label187;
}
if (this.data.Data_ChargeState.equals("topoff"))
{
Object[] arrayOfObject8 = new Object[1];
arrayOfObject8[0] = this.data.Data_ChargeMode.toUpperCase();
localTextView2.setText(String.format("Topping Off - %s", arrayOfObject8));
break label187;
}
if (this.data.Data_ChargeState.equals("stopped"))
{
Object[] arrayOfObject7 = new Object[1];
arrayOfObject7[0] = this.data.Data_ChargeMode.toUpperCase();
localTextView2.setText(String.format("Charge Interrupted - %s", arrayOfObject7));
break label187;
}
if (!this.data.Data_ChargeState.equals("done"))
break label187;
Object[] arrayOfObject2 = new Object[1];
arrayOfObject2[0] = this.data.Data_ChargeMode.toUpperCase();
localTextView2.setText(String.format("Charge Completed - %s", arrayOfObject2));
break label187;
label883: localSeekBar.setProgress(100);
localImageView1.setVisibility(i);
Object[] arrayOfObject3 = new Object[1];
arrayOfObject3[0] = Integer.valueOf(this.data.Data_ChargeAmpsLimit);
localTextView3.setText(String.format("%sA MAX", arrayOfObject3));
break label280;
label932: j = 0;
break label414;
if (k < 7)
{
localImageView4.setImageResource(2130837609);
break label489;
}
if (k < 14)
{
localImageView4.setImageResource(2130837610);
break label489;
}
if (k < 21)
{
localImageView4.setImageResource(2130837611);
break label489;
}
if (k < 28)
{
localImageView4.setImageResource(2130837612);
break label489;
}
localImageView4.setImageResource(2130837613);
break label489;
label1021: StringBuilder localStringBuilder2 = new StringBuilder("** File Not Found: ").append(getCacheDir().getAbsolutePath());
Object[] arrayOfObject5 = new Object[1];
arrayOfObject5[0] = this.data.VehicleImageDrawable;
Log.d("OVMS", String.format("/%s.png", arrayOfObject5));
if ((!this.data.DontAskLayoutDownload) && ((this.lastUpdatedDialog == null) || (!this.lastUpdatedDialog.isShowing())))
{
this.data.DontAskLayoutDownload = true;
AlertDialog.Builder localBuilder = new AlertDialog.Builder(this);
localBuilder.setMessage("Would you like to download a set of high resolution car images specifically drawn for your car?\n\nThe download is approx. 300KB.\n\nNote: a manual download button is available in the car commands and settings tab.").setTitle("Download Graphics").setCancelable(true).setPositiveButton("Download Now", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface paramAnonymousDialogInterface, int paramAnonymousInt)
{
TabInfo_xlarge.this.downloadLayout();
paramAnonymousDialogInterface.dismiss();
}
}).setNegativeButton("Later", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface paramAnonymousDialogInterface, int paramAnonymousInt)
{
paramAnonymousDialogInterface.dismiss();
}
});
this.lastUpdatedDialog = localBuilder.create();
this.lastUpdatedDialog.show();
}
}
}
catch (Exception localException)
{
break label489;
}
}
}
private void updateLastUpdatedView()
{
if ((this.data == null) || (this.data.Data_LastCarUpdate == null));
while (true)
{
return;
TextView localTextView1 = (TextView)findViewById(2131296343);
long l1 = (new Date().getTime() - this.data.Data_LastCarUpdate.getTime()) / 1000L;
label69: TextView localTextView2;
LinearLayout localLinearLayout;
long l2;
if (l1 < 60L)
{
localTextView1.setText("live");
localTextView2 = (TextView)findViewById(2131296340);
localLinearLayout = (LinearLayout)findViewById(2131296338);
if ((this.data.Data_CarPoweredON) || (this.data.Data_ParkedTime_raw == 0.0D))
break label832;
l2 = l1 + ()this.data.Data_ParkedTime_raw;
this.data.Data_ParkedTime = new Date(new Date().getTime() - 1000L * l2);
if (l2 >= 60L)
break label449;
localTextView2.setText("just now");
}
while (true)
{
localLinearLayout.setVisibility(0);
break;
if (l1 < 3600L)
{
int i3 = (int)Math.ceil(l1 / 60L);
Object[] arrayOfObject8 = new Object[2];
arrayOfObject8[0] = Integer.valueOf(i3);
if (i3 > 1);
for (String str9 = "s"; ; str9 = "")
{
arrayOfObject8[1] = str9;
localTextView1.setText(String.format("Updated: %d min%s ago", arrayOfObject8));
break;
}
}
if (l1 < 86400L)
{
int i2 = (int)Math.ceil(l1 / 3600L);
Object[] arrayOfObject7 = new Object[2];
arrayOfObject7[0] = Integer.valueOf(i2);
if (i2 > 1);
for (String str8 = "s"; ; str8 = "")
{
arrayOfObject7[1] = str8;
localTextView1.setText(String.format("Updated: %d hr%s ago", arrayOfObject7));
break;
}
}
if (l1 < 864000L)
{
int i1 = (int)Math.ceil(l1 / 86400L);
Object[] arrayOfObject6 = new Object[2];
arrayOfObject6[0] = Integer.valueOf(i1);
if (i1 > 1);
for (String str7 = "s"; ; str7 = "")
{
arrayOfObject6[1] = str7;
localTextView1.setText(String.format("Updated: %d day%s ago", arrayOfObject6));
break;
}
}
String str1 = getString(2131099651);
Object[] arrayOfObject1 = new Object[1];
arrayOfObject1[0] = this.data.Data_LastCarUpdate;
localTextView1.setText(String.format(str1, arrayOfObject1));
break label69;
label449: if (l2 < 3600L)
{
int n = (int)Math.ceil(l2 / 60L);
Object[] arrayOfObject5 = new Object[2];
arrayOfObject5[0] = Integer.valueOf(n);
if (n > 1);
for (String str6 = "s"; ; str6 = "")
{
arrayOfObject5[1] = str6;
localTextView2.setText(String.format("%d min%s", arrayOfObject5));
break;
}
}
if (l2 < 86400L)
{
int k = (int)Math.floor(l2 / 3600L);
int m = (int)Math.ceil(Math.abs((l2 - k * 3600) / 60L));
Object[] arrayOfObject4 = new Object[4];
arrayOfObject4[0] = Integer.valueOf(k);
String str4;
if (k > 1)
{
str4 = "s";
label599: arrayOfObject4[1] = str4;
arrayOfObject4[2] = Integer.valueOf(m);
if (m <= 1)
break label655;
}
label655: for (String str5 = "s"; ; str5 = "")
{
arrayOfObject4[3] = str5;
localTextView2.setText(String.format("%d hr%s %d min%s", arrayOfObject4));
break;
str4 = "";
break label599;
}
}
if (l2 < 864000L)
{
int i = (int)Math.floor(l2 / 86400L);
int j = (int)Math.ceil(Math.abs((l2 - 86400 * i) / 3600L));
Object[] arrayOfObject3 = new Object[4];
arrayOfObject3[0] = Integer.valueOf(i);
String str2;
if (i > 1)
{
str2 = "s";
label735: arrayOfObject3[1] = str2;
arrayOfObject3[2] = Integer.valueOf(j);
if (j <= 1)
break label791;
}
label791: for (String str3 = "s"; ; str3 = "")
{
arrayOfObject3[3] = str3;
localTextView2.setText(String.format("%d day%s %d hr%s", arrayOfObject3));
break;
str2 = "";
break label735;
}
}
Object[] arrayOfObject2 = new Object[1];
arrayOfObject2[0] = this.data.Data_ParkedTime;
localTextView2.setText(String.format("%1$tD %1$tT", arrayOfObject2));
}
label832: localLinearLayout.setVisibility(8);
}
}
private void updateMapUI()
{
Log.d("OVMS", "Refreshing Map");
try
{
if (!this.currentVehicleID.equals(this.data.VehicleID))
{
this.currentVehicleID = this.data.VehicleID;
this.carMarkers = new Utilities.CarMarkerOverlay(getResources().getDrawable(getResources().getIdentifier(this.data.VehicleImageDrawable + "32x32", "drawable", "com.openvehicles.OVMS")), 20, this, this.DirectionalMarker, 1);
this.mapOverlays.set(0, this.carMarkers);
}
label118: GeoPoint localGeoPoint = Utilities.GetCarGeopoint(this.data);
if ((this.carMarkers.size() == 0) || (!this.carMarkers.getItem(0).getPoint().equals(localGeoPoint)))
{
if (this.carMarkers.size() <= 0)
break label234;
this.lastCarGeoPoint = this.carMarkers.getItem(0).getPoint();
this.carMarkerAnimationTimerHandler.removeCallbacks(this.animateCarMarker);
this.carMarkerAnimationFrame = 0;
this.carMarkerAnimationTimerHandler.postDelayed(this.animateCarMarker, 0L);
}
while (true)
{
this.mc.animateTo(localGeoPoint);
this.mc.setZoom(17);
this.mapView.invalidate();
return;
label234: String str1 = "-";
if (this.data.Data_LastCarUpdate != null)
str1 = new SimpleDateFormat("MMM d, K:mm:ss a").format(this.data.Data_LastCarUpdate);
String str2 = this.data.VehicleID;
Object[] arrayOfObject = new Object[1];
arrayOfObject[0] = str1;
Utilities.CarMarker localCarMarker = new Utilities.CarMarker(localGeoPoint, str2, String.format("Last reported: %s", arrayOfObject), (int)this.data.Data_Direction);
this.carMarkers.addOverlay(localCarMarker);
}
}
catch (Exception localException)
{
break label118;
}
}
public void OrientationChanged() {
this.orientationChangedHandler.sendEmptyMessage(0);
}
public void Refresh(CarData paramCarData, boolean paramBoolean) {
this.data = paramCarData;
this.isLoggedIn = paramBoolean;
this.handler.sendEmptyMessage(0);
}
protected boolean isRouteDisplayed() {
return false;
}
public void onCreate(Bundle paramBundle) {
super.onCreate(paramBundle);
setContentView(2130903055);
initInfoUI();
initCarLayoutUI();
initMapUI();
}
protected void onPause() {
super.onPause();
try {
if ((this.softwareInformation != null)
&& (this.softwareInformation.isShowing()))
this.softwareInformation.dismiss();
try {
label28: if ((this.lastUpdatedDialog != null)
&& (this.lastUpdatedDialog.isShowing()))
this.lastUpdatedDialog.dismiss();
label52: this.lastUpdateTimerHandler
.removeCallbacks(this.lastUpdateTimer);
return;
} catch (Exception localException2) {
break label52;
}
} catch (Exception localException1) {
break label28;
}
}
protected void onResume() {
super.onResume();
this.lastUpdateTimerHandler.postDelayed(this.lastUpdateTimer, 5000L);
}
}