Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into xDrip-2-beta
Browse files Browse the repository at this point in the history
Conflicts:
	app/src/main/java/com/eveningoutpost/dexdrip/Home.java
  • Loading branch information
StephenBlackWasAlreadyTaken committed Sep 6, 2015
2 parents ffaeb89 + d30a703 commit e07c95b
Show file tree
Hide file tree
Showing 18 changed files with 739 additions and 56 deletions.
4 changes: 4 additions & 0 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,10 @@
android:name=".Tables.SensorDataTable"
android:label="Sensor Table" >
</activity>
<activity
android:name=".ImportDatabaseActivity"
android:label="Import Database" >
</activity>
<activity
android:name=".AddCalibration"
android:label="@string/title_activity_add_calibration" >
Expand Down
84 changes: 80 additions & 4 deletions app/src/main/java/com/eveningoutpost/dexdrip/Home.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,29 @@
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.ColorFilter;
import android.graphics.Paint;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.v4.widget.DrawerLayout;
import android.util.Log;
import android.util.DisplayMetrics;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;

import com.eveningoutpost.dexdrip.ImportedLibraries.dexcom.Constants;
import com.eveningoutpost.dexdrip.Models.ActiveBluetoothDevice;
import com.eveningoutpost.dexdrip.Models.BgReading;
import com.eveningoutpost.dexdrip.Models.Calibration;
import com.eveningoutpost.dexdrip.Models.UserError;
import com.eveningoutpost.dexdrip.Services.WixelReader;
import com.eveningoutpost.dexdrip.UtilityModels.BgGraphBuilder;
import com.eveningoutpost.dexdrip.UtilityModels.CollectionServiceStarter;
Expand All @@ -40,8 +45,8 @@
import java.util.Date;
import java.util.List;

import lecho.lib.hellocharts.listener.ViewportChangeListener;
import lecho.lib.hellocharts.gesture.ZoomType;
import lecho.lib.hellocharts.listener.ViewportChangeListener;
import lecho.lib.hellocharts.model.Viewport;
import lecho.lib.hellocharts.view.LineChartView;
import lecho.lib.hellocharts.view.PreviewLineChartView;
Expand Down Expand Up @@ -150,6 +155,40 @@ public void setupCharts() {

chart.setZoomType(ZoomType.HORIZONTAL);

//Transmitter Battery Level
final Sensor sensor = Sensor.currentSensor();
if (sensor != null && sensor.latest_battery_level != 0 && sensor.latest_battery_level <= Constants.TRANSMITTER_BATTERY_LOW) {
Drawable background = new Drawable() {

@Override
public void draw(Canvas canvas) {

DisplayMetrics metrics = getApplicationContext().getResources().getDisplayMetrics();
int px = (int) (30 * (metrics.densityDpi / 160f));
Paint paint = new Paint();
paint.setTextSize(px);
paint.setAntiAlias(true);
paint.setColor(Color.parseColor("#FFFFAA"));
paint.setStyle(Paint.Style.STROKE);
paint.setAlpha(100);
canvas.drawText("transmitter battery", 10, chart.getHeight() / 3 - (int) (1.2 * px), paint);
if(sensor.latest_battery_level <= Constants.TRANSMITTER_BATTERY_EMPTY){
paint.setTextSize((int)(px*1.5));
canvas.drawText("VERY LOW", 10, chart.getHeight() / 3, paint);
} else {
canvas.drawText("low", 10, chart.getHeight() / 3, paint);
}
}

@Override
public void setAlpha(int alpha) {}
@Override
public void setColorFilter(ColorFilter cf) {}
@Override
public int getOpacity() {return 0;}
};
chart.setBackground(background);
}
previewChart = (PreviewLineChartView) findViewById(R.id.chart_preview);
previewChart.setZoomType(ZoomType.HORIZONTAL);

Expand Down Expand Up @@ -179,14 +218,14 @@ public void onPause() {
try {
unregisterReceiver(_broadcastReceiver);
} catch (IllegalArgumentException e) {
Log.e(TAG, "_broadcast_receiver not registered", e);
UserError.Log.e(TAG, "_broadcast_receiver not registered", e);
}
}
if (newDataReceiver != null) {
try {
unregisterReceiver(newDataReceiver);
} catch (IllegalArgumentException e) {
Log.e(TAG, "newDataReceiver not registered", e);
UserError.Log.e(TAG, "newDataReceiver not registered", e);
}
}
}
Expand Down Expand Up @@ -430,6 +469,43 @@ protected void onPostExecute(String filename) {

return true;
}

if (item.getItemId() == R.id.action_import_db) {
startActivity(new Intent(this, ImportDatabaseActivity.class));
return true;
}



if (item.getItemId() == R.id.action_export_csv_sidiary) {
new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... params) {
return DatabaseUtil.saveCSV(getBaseContext());
}

@Override
protected void onPostExecute(String filename) {
super.onPostExecute(filename);
if (filename != null) {
SnackbarManager.show(
Snackbar.with(Home.this)
.type(SnackbarType.MULTI_LINE)
.duration(4000)
.text("Exported to " + filename) // text to display
.actionLabel("Share") // action button label
.actionListener(new SnackbarUriListener(Uri.fromFile(new File(filename)))),
Home.this);
} else {
Toast.makeText(Home.this, "Could not export CSV :(", Toast.LENGTH_LONG).show();
}
}
}.execute();

return true;
}


return super.onOptionsItemSelected(item);
}

Expand Down
Loading

0 comments on commit e07c95b

Please sign in to comment.