danar profile dia&car configurable in preferences
This commit is contained in:
parent
f01b03979d
commit
7f661b7fa6
|
@ -13,7 +13,9 @@ import android.preference.PreferenceManager;
|
||||||
|
|
||||||
import info.nightscout.androidaps.events.EventPreferenceChange;
|
import info.nightscout.androidaps.events.EventPreferenceChange;
|
||||||
import info.nightscout.androidaps.events.EventRefreshGui;
|
import info.nightscout.androidaps.events.EventRefreshGui;
|
||||||
|
import info.nightscout.androidaps.interfaces.PluginBase;
|
||||||
import info.nightscout.androidaps.plugins.DanaR.BluetoothDevicePreference;
|
import info.nightscout.androidaps.plugins.DanaR.BluetoothDevicePreference;
|
||||||
|
import info.nightscout.androidaps.plugins.DanaR.DanaRFragment;
|
||||||
import info.nightscout.utils.LocaleHelper;
|
import info.nightscout.utils.LocaleHelper;
|
||||||
|
|
||||||
public class PreferencesActivity extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener {
|
public class PreferencesActivity extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener {
|
||||||
|
@ -85,8 +87,13 @@ public class PreferencesActivity extends PreferenceActivity implements SharedPre
|
||||||
if (Config.LOWSUSPEDENABLED)
|
if (Config.LOWSUSPEDENABLED)
|
||||||
addPreferencesFromResource(R.xml.pref_lowsuspend);
|
addPreferencesFromResource(R.xml.pref_lowsuspend);
|
||||||
addPreferencesFromResource(R.xml.pref_nightscout);
|
addPreferencesFromResource(R.xml.pref_nightscout);
|
||||||
if (Config.DANAR)
|
if (Config.DANAR) {
|
||||||
addPreferencesFromResource(R.xml.pref_danar);
|
addPreferencesFromResource(R.xml.pref_danar);
|
||||||
|
DanaRFragment danaRFragment = (DanaRFragment) MainActivity.getSpecificPlugin(DanaRFragment.class);
|
||||||
|
if (danaRFragment != null && danaRFragment.isEnabled(PluginBase.PROFILE)) {
|
||||||
|
addPreferencesFromResource(R.xml.pref_danarprofile);
|
||||||
|
}
|
||||||
|
}
|
||||||
if (Config.MM640G)
|
if (Config.MM640G)
|
||||||
addPreferencesFromResource(R.xml.pref_mm640g);
|
addPreferencesFromResource(R.xml.pref_mm640g);
|
||||||
if (Config.SMSCOMMUNICATORENABLED)
|
if (Config.SMSCOMMUNICATORENABLED)
|
||||||
|
|
|
@ -67,8 +67,6 @@ public class DanaRFragment extends Fragment implements PluginBase, PumpInterface
|
||||||
Handler loopHandler = new Handler();
|
Handler loopHandler = new Handler();
|
||||||
Runnable refreshLoop = null;
|
Runnable refreshLoop = null;
|
||||||
|
|
||||||
NSProfile convertedProfile = null;
|
|
||||||
|
|
||||||
TextView lastConnectionView;
|
TextView lastConnectionView;
|
||||||
TextView btConnectionView;
|
TextView btConnectionView;
|
||||||
TextView lastBolusView;
|
TextView lastBolusView;
|
||||||
|
@ -851,7 +849,7 @@ public class DanaRFragment extends Fragment implements PluginBase, PumpInterface
|
||||||
DanaRPump pump = getDanaRPump();
|
DanaRPump pump = getDanaRPump();
|
||||||
if (pump.lastSettingsRead.getTime() == 0)
|
if (pump.lastSettingsRead.getTime() == 0)
|
||||||
return null; // no info now
|
return null; // no info now
|
||||||
return pump.convertedProfile;
|
return pump.createConvertedProfile();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reply for sms communicator
|
// Reply for sms communicator
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
package info.nightscout.androidaps.plugins.DanaR;
|
package info.nightscout.androidaps.plugins.DanaR;
|
||||||
|
|
||||||
|
import android.content.SharedPreferences;
|
||||||
|
import android.preference.PreferenceManager;
|
||||||
|
|
||||||
import org.json.JSONArray;
|
import org.json.JSONArray;
|
||||||
import org.json.JSONException;
|
import org.json.JSONException;
|
||||||
import org.json.JSONObject;
|
import org.json.JSONObject;
|
||||||
|
@ -8,7 +11,9 @@ import java.text.DecimalFormat;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
import info.nightscout.androidaps.Constants;
|
import info.nightscout.androidaps.Constants;
|
||||||
|
import info.nightscout.androidaps.MainApp;
|
||||||
import info.nightscout.client.data.NSProfile;
|
import info.nightscout.client.data.NSProfile;
|
||||||
|
import info.nightscout.utils.SafeParse;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by mike on 04.07.2016.
|
* Created by mike on 04.07.2016.
|
||||||
|
@ -86,9 +91,7 @@ public class DanaRPump {
|
||||||
public double maxBolus;
|
public double maxBolus;
|
||||||
public double maxBasal;
|
public double maxBasal;
|
||||||
|
|
||||||
NSProfile convertedProfile = null;
|
public NSProfile createConvertedProfile() {
|
||||||
|
|
||||||
public void createConvertedProfile() {
|
|
||||||
JSONObject json = new JSONObject();
|
JSONObject json = new JSONObject();
|
||||||
JSONObject store = new JSONObject();
|
JSONObject store = new JSONObject();
|
||||||
JSONObject profile = new JSONObject();
|
JSONObject profile = new JSONObject();
|
||||||
|
@ -98,10 +101,14 @@ public class DanaRPump {
|
||||||
// Evening / 17:00–21:59
|
// Evening / 17:00–21:59
|
||||||
// Night / 22:00–5:59
|
// Night / 22:00–5:59
|
||||||
|
|
||||||
|
SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(MainApp.instance().getApplicationContext());
|
||||||
|
double dia = SafeParse.stringToDouble(SP.getString("danarprofile_dia", "3"));
|
||||||
|
double car = SafeParse.stringToDouble(SP.getString("danarprofile_car", "20"));
|
||||||
|
|
||||||
try {
|
try {
|
||||||
json.put("defaultProfile", "" + (activeProfile + 1));
|
json.put("defaultProfile", "" + (activeProfile + 1));
|
||||||
json.put("store", store);
|
json.put("store", store);
|
||||||
profile.put("dia", 3); // TODO: fixed DIA, maybe would be needed to have it configurable in settings
|
profile.put("dia", dia);
|
||||||
|
|
||||||
JSONArray carbratios = new JSONArray();
|
JSONArray carbratios = new JSONArray();
|
||||||
carbratios.put(new JSONObject().put("time", "00:00").put("timeAsSeconds", 0).put("value", nightCF));
|
carbratios.put(new JSONObject().put("time", "00:00").put("timeAsSeconds", 0).put("value", nightCF));
|
||||||
|
@ -111,7 +118,7 @@ public class DanaRPump {
|
||||||
carbratios.put(new JSONObject().put("time", "22:00").put("timeAsSeconds", 22 * 3600).put("value", nightCF));
|
carbratios.put(new JSONObject().put("time", "22:00").put("timeAsSeconds", 22 * 3600).put("value", nightCF));
|
||||||
profile.put("carbratio", carbratios);
|
profile.put("carbratio", carbratios);
|
||||||
|
|
||||||
profile.put("carbs_hr", 20); // TODO: fixed CAR, maybe would be needed to have it configurable in settings
|
profile.put("carbs_hr", car);
|
||||||
|
|
||||||
JSONArray sens = new JSONArray();
|
JSONArray sens = new JSONArray();
|
||||||
sens.put(new JSONObject().put("time", "00:00").put("timeAsSeconds", 0).put("value", nightCIR));
|
sens.put(new JSONObject().put("time", "00:00").put("timeAsSeconds", 0).put("value", nightCIR));
|
||||||
|
@ -143,7 +150,7 @@ public class DanaRPump {
|
||||||
} catch (JSONException e) {
|
} catch (JSONException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
convertedProfile = new NSProfile(json, "" + (activeProfile + 1));
|
return new NSProfile(json, "" + (activeProfile + 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -260,7 +260,8 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@string/danar_viewprofile"
|
android:text="@string/danar_viewprofile"
|
||||||
android:id="@+id/danar_viewprofile" />
|
android:id="@+id/danar_viewprofile"
|
||||||
|
android:layout_weight="1" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
|
@ -257,5 +257,8 @@
|
||||||
<string name="glucosetype_manual">Manual</string>
|
<string name="glucosetype_manual">Manual</string>
|
||||||
<string name="careportal_temporarytarget">Temporary Target</string>
|
<string name="careportal_temporarytarget">Temporary Target</string>
|
||||||
<string name="careportal_temporarytargetcancel">Temporary Target Cancel</string>
|
<string name="careportal_temporarytargetcancel">Temporary Target Cancel</string>
|
||||||
|
<string name="danarprofile">DanaR profile settings</string>
|
||||||
|
<string name="danarprofile_dia">DIA [h]</string>
|
||||||
|
<string name="danarprofile_car">Carbs absorption rate</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
|
19
app/src/main/res/xml/pref_danarprofile.xml
Normal file
19
app/src/main/res/xml/pref_danarprofile.xml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
<PreferenceCategory
|
||||||
|
android:key="DanaRProfile"
|
||||||
|
android:title="@string/danarprofile">
|
||||||
|
<EditTextPreference
|
||||||
|
android:defaultValue=""
|
||||||
|
android:key="danarprofile_dia"
|
||||||
|
android:numeric="decimal"
|
||||||
|
android:title="@string/danarprofile_dia" />
|
||||||
|
<EditTextPreference
|
||||||
|
android:defaultValue=""
|
||||||
|
android:key="danarprofile_car"
|
||||||
|
android:numeric="decimal"
|
||||||
|
android:title="@string/danarprofile_car" />
|
||||||
|
|
||||||
|
</PreferenceCategory>
|
||||||
|
|
||||||
|
</PreferenceScreen>
|
Loading…
Reference in a new issue