diff --git a/.idea/misc.xml b/.idea/misc.xml
index 5d19981032..fbb68289f4 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -37,7 +37,7 @@
-
+
diff --git a/app/build.gradle b/app/build.gradle
index 214175aa23..8d3d4d5399 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -23,8 +23,8 @@ android {
applicationId "info.nightscout.androidaps"
minSdkVersion 21
targetSdkVersion 23
- versionCode 1005
- versionName "1.0.05"
+ versionCode 1006
+ versionName "1.0.06"
}
buildTypes {
release {
diff --git a/app/src/main/java/info/nightscout/androidaps/PreferencesActivity.java b/app/src/main/java/info/nightscout/androidaps/PreferencesActivity.java
index d3b9a1aca6..4e4214e91f 100644
--- a/app/src/main/java/info/nightscout/androidaps/PreferencesActivity.java
+++ b/app/src/main/java/info/nightscout/androidaps/PreferencesActivity.java
@@ -1,20 +1,29 @@
package info.nightscout.androidaps;
import android.content.SharedPreferences;
+import android.os.Bundle;
+import android.preference.EditTextPreference;
+import android.preference.ListPreference;
+import android.preference.MultiSelectListPreference;
+import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.PreferenceFragment;
+import android.preference.PreferenceGroup;
import android.preference.PreferenceManager;
-import android.os.Bundle;
import info.nightscout.androidaps.events.EventPreferenceChange;
import info.nightscout.androidaps.events.EventRefreshGui;
+import info.nightscout.androidaps.plugins.DanaR.BluetoothDevicePreference;
import info.nightscout.utils.LocaleHelper;
public class PreferencesActivity extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener {
+ MyPreferenceFragment myPreferenceFragment;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- getFragmentManager().beginTransaction().replace(android.R.id.content, new MyPreferenceFragment()).commit();
+ myPreferenceFragment = new MyPreferenceFragment();
+ getFragmentManager().beginTransaction().replace(android.R.id.content, myPreferenceFragment).commit();
PreferenceManager.getDefaultSharedPreferences(this).registerOnSharedPreferenceChangeListener(this);
}
@@ -22,12 +31,43 @@ public class PreferencesActivity extends PreferenceActivity implements SharedPre
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
MainApp.bus().post(new EventPreferenceChange());
if (key.equals("language")) {
- SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
- String lang = SP.getString("language", "en");
+ String lang = sharedPreferences.getString("language", "en");
LocaleHelper.setLocale(getApplicationContext(), lang);
recreate();
MainApp.bus().post(new EventRefreshGui());
}
+ updatePrefSummary(myPreferenceFragment.getPreference(key));
+ }
+
+ private static void updatePrefSummary(Preference pref) {
+ if (pref instanceof ListPreference || pref instanceof BluetoothDevicePreference) {
+ ListPreference listPref = (ListPreference) pref;
+ pref.setSummary(listPref.getEntry());
+ }
+ if (pref instanceof EditTextPreference) {
+ EditTextPreference editTextPref = (EditTextPreference) pref;
+ if (pref.getTitle().toString().toLowerCase().contains("password"))
+ {
+ pref.setSummary("******");
+ } else {
+ pref.setSummary(editTextPref.getText());
+ }
+ }
+ if (pref instanceof MultiSelectListPreference) {
+ EditTextPreference editTextPref = (EditTextPreference) pref;
+ pref.setSummary(editTextPref.getText());
+ }
+ }
+
+ private static void initSummary(Preference p) {
+ if (p instanceof PreferenceGroup) {
+ PreferenceGroup pGrp = (PreferenceGroup) p;
+ for (int i = 0; i < pGrp.getPreferenceCount(); i++) {
+ initSummary(pGrp.getPreference(i));
+ }
+ } else {
+ updatePrefSummary(p);
+ }
}
public static class MyPreferenceFragment extends PreferenceFragment {
@@ -42,9 +82,16 @@ public class PreferencesActivity extends PreferenceActivity implements SharedPre
addPreferencesFromResource(R.xml.pref_openapsma);
if (Config.LOWSUSPEDENABLED)
addPreferencesFromResource(R.xml.pref_lowsuspend);
+ addPreferencesFromResource(R.xml.pref_nightscout);
+ if (Config.DANAR)
+ addPreferencesFromResource(R.xml.pref_danar);
if (Config.CAREPORTALENABLED)
addPreferencesFromResource(R.xml.pref_careportal);
+ initSummary(getPreferenceScreen());
+ }
+ public Preference getPreference (String key) {
+ return findPreference(key);
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/info/nightscout/androidaps/Services/DataService.java b/app/src/main/java/info/nightscout/androidaps/Services/DataService.java
index 4e9512f0b2..1b9b1ea3d5 100644
--- a/app/src/main/java/info/nightscout/androidaps/Services/DataService.java
+++ b/app/src/main/java/info/nightscout/androidaps/Services/DataService.java
@@ -2,7 +2,9 @@ package info.nightscout.androidaps.Services;
import android.app.IntentService;
import android.content.Intent;
+import android.content.SharedPreferences;
import android.os.Bundle;
+import android.preference.PreferenceManager;
import android.support.annotation.Nullable;
import com.j256.ormlite.dao.Dao;
@@ -224,7 +226,9 @@ public class DataService extends IntentService {
}
PumpInterface pump = MainApp.getConfigBuilder().getActivePump();
if (pump != null) {
- pump.setNewBasalProfile(nsProfile);
+ SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
+ if (SP.getBoolean("syncprofiletopump", false))
+ pump.setNewBasalProfile(nsProfile);
} else {
log.error("No active pump selected");
}
diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/DanaR/BluetoothDevicePreference.java b/app/src/main/java/info/nightscout/androidaps/plugins/DanaR/BluetoothDevicePreference.java
new file mode 100644
index 0000000000..ba7ec5f533
--- /dev/null
+++ b/app/src/main/java/info/nightscout/androidaps/plugins/DanaR/BluetoothDevicePreference.java
@@ -0,0 +1,37 @@
+package info.nightscout.androidaps.plugins.DanaR;
+
+import android.bluetooth.*;
+import android.content.Context;
+import android.preference.ListPreference;
+import android.util.AttributeSet;
+
+import java.util.Set;
+
+public class BluetoothDevicePreference extends ListPreference {
+
+ public BluetoothDevicePreference(Context context, AttributeSet attrs) {
+ super(context, attrs);
+
+ BluetoothAdapter bta = BluetoothAdapter.getDefaultAdapter();
+ Integer size = 0;
+ if (bta != null) {
+ size += bta.getBondedDevices().size();
+ }
+ CharSequence[] entries = new CharSequence[size];
+ int i = 0;
+ if (bta != null) {
+ Set pairedDevices = bta.getBondedDevices();
+ for (BluetoothDevice dev : pairedDevices) {
+ entries[i] = dev.getName();
+ i++;
+ }
+ }
+ setEntries(entries);
+ setEntryValues(entries);
+ }
+
+ public BluetoothDevicePreference(Context context) {
+ this(context, null);
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml
index abf42e92e3..0089a3d87c 100644
--- a/app/src/main/res/values-bg/strings.xml
+++ b/app/src/main/res/values-bg/strings.xml
@@ -1,9 +1,6 @@
AndroidAPS
- Closed Loop
- Otevřená smyčka
- Аларма
APS режим
Ср. изменение
Базал
@@ -68,154 +65,15 @@
English
Ново действие
КЗ:
- Лимит
- Smyčka
- APS
- Po zpracování omezení
- Nastaveno pumpou
- SMYČKA ZAKÁZÁNA OMEZENÍM
- Low Suspend
- Hodnota nízké glykémie
- Ručně spuštěno
- Předpokládaná nízká glykémie:
- Max U/h dočasného bázálu jsou
- Max bazál
- Maximální množství nebolusového IOB, které může OpenAPS používat
- Maximální bazální IOB
- min zpět
- Minimální trvání
- Záloha
- Ukončit
- Nastavení
- Aktualizuj ošetření z NS
- Inicializuj databáze
- Test alarmu
- ŽÁDNÉ APS NEVYBRÁNO NEBO NEVRÁTILO VÝSLEDEK
- Změna nepožadována
- Dosud nebyl načten profil z NS
- Používat absolutní hodnoty místo procent při nahrávání do NS
- Použít absolutní hodnoty
- NSClient
- Aktivní profil:
- Bazál:
- Trvání inzulínu:
- Inzulínosacharidový poměr:
- ŽÁDNÝ PROFIL NENASTAVEN
- Cíl:
- Jednotky:
- Cíle
- Začátek
- Kontrola
- Splnit:
- Cíl:
- OK
- Součaný bazál
- Modul zakázán
- Vstupní glykémie
- Vstupní parametry
- IOB data
- Poslední provedení
- Poslední spuštění
- Data o jídle
- Cílová nízká glykémie
- Nedostupná data o glykémiích
- Nedostupný profil
- Žádná pumpa
- Profil
- Požadavek
- Výsledek
- Sputit teď
- Dostupné nové doporučení
- Přehled
- Kalkulačka
- Hodnota bazálu
- % (100% = současný)
- Bolus
- NS profil
- Stav pumpy dostupný v NS
- Hodnota:
- Zdůvodnění:
- Opravdu aktualizovat ošetření z NS
- Bezpečnost
- Použít kombo bolusy pro bazály větší než 100%
- Použít kombo bolusy
- Spustit nový kombo bolus:
- Spustit nový dočasný bazál:
- Jednoduchý profil
- Dočasné bazály
- IOB:
- Celkové IOB:
- Inz:
- Hodn:
- Trv:
- Nastavení
- Chyba podání bolusu
- Ošetření
- Aktivita:
- Sacharidy:
- Inzulín:
- IOB:
- Celková aktivita IOB:
- Celkové IOB:
- Množtví sacharidů
- Množství inzulínu
- Bazální IOB
- Glykémie
- Bolusové IOB
- Sacharidy
- Korekce
- CELKEM
- U
- Max. povolený bolus
- Max. povolené sacharidy
- Bezpečnost zadání ošetřeni
- Nepodporovaná verze NSClient
- Virtualní pumpa
- Základní hodnota bazálu:
- Baterie:
- Kombo bolus:
- Zásobník:
- OK
- Chyba databáze
- Dočasný bazál:
- VIRTUÁLNÍ PUMPA
- xDrip
- Kombo bolus
- Dočasný bazál
- Citlivost:
- NSClient není nainstalován. Záznam je ztracen!
- Předpokládaná nízká glykémie: Dočasný bazál 0%
- Nízká glykémie: Dočasný bazál 0%
- Low Suspend: Zrušení dočasného bazálu
- Low Suspend:
Тип събитие
КЗ тип
- AndroidAPS
- OpenAPS MA
Nightscout версия:
NSClient версия:
- POSLAT
- Chybí
- Enabled
- Viditelný
- Nahoru
Настройките са експортирани
- Nastavení importováno
Импортирай настройки от:
Файлът не съществува
Експортирай настройки до
- Exportovat nastavení
- Importovat nastavení
German
- Limity APS
- Maximální hodnota ještě v rozsahu
- Horní limit
- Minimální hodnota ještě v rozsahu
- Dolní limit
- Maximální povolený bazál [U/h]
- Maximální bazál
- Maximální IOB z bazálů
- Maximální nebolusové IOB, které může OpenAPS použít
- Cílový rozsah pro OpenAPS
български
+ Nightscout
diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml
index 9698ecdd90..69bc8bfb8d 100644
--- a/app/src/main/res/values-cs/strings.xml
+++ b/app/src/main/res/values-cs/strings.xml
@@ -3,7 +3,6 @@
AndroidAPS
Uzavřená smyčka
Otevřená smyčka
- Výstaha
Typ smyčky
Prům. změna
Bazál
@@ -68,7 +67,6 @@
English
Zadej nové ošetření
Glykémie:
- Limity
Smyčka
APS
Po zpracování omezení
@@ -78,10 +76,6 @@
Hodnota nízké glykémie
Ručně spuštěno
Předpokládaná nízká glykémie:
- Max U/h dočasného bázálu jsou
- Max bazál
- Maximální množství nebolusového IOB, které může OpenAPS používat
- Maximální bazální IOB
min zpět
Minimální trvání
Záloha
@@ -93,8 +87,7 @@
ŽÁDNÉ APS NEVYBRÁNO NEBO NEVRÁTILO VÝSLEDEK
Změna nepožadována
Dosud nebyl načten profil z NS
- Používat absolutní hodnoty místo procent při nahrávání do NS
- Použít absolutní hodnoty
+ Vždy použít absolutní hodnoty bazálu
NSClient
Aktivní profil:
Bazál:
@@ -137,8 +130,7 @@
Zdůvodnění:
Opravdu aktualizovat ošetření z NS
Bezpečnost
- Použít kombo bolusy pro bazály větší než 100%
- Použít kombo bolusy
+ Použít kombo bolusy pro >200%
Spustit nový kombo bolus:
Spustit nový dočasný bazál:
Jednoduchý profil
@@ -148,7 +140,6 @@
Inz:
Hodn:
Trv:
- Nastavení
Chyba podání bolusu
Ošetření
Aktivita:
@@ -166,8 +157,8 @@
Korekce
CELKEM
U
- Max. povolený bolus
- Max. povolené sacharidy
+ Maximální povolený bolus [U]
+ Maximální povolené sacharidy [g]
Bezpečnost zadání ošetřeni
Nepodporovaná verze NSClient
Virtualní pumpa
@@ -190,7 +181,6 @@
Low Suspend:
Typ události
Zadání glykémie
- AndroidAPS
OpenAPS MA
Verze Nightscoutu:
Verze NSClienta:
@@ -207,16 +197,10 @@
Exportovat nastavení
Importovat nastavení
German
- Limity APS
- Maximální hodnota ještě v rozsahu
- Horní limit
- Minimální hodnota ještě v rozsahu
- Dolní limit
+ Maximální hodnota glykémie ještě v rozsahu
+ Minimální hodnota glykémie ještě v rozsahu
Maximální povolený bazál [U/h]
- Maximální bazál
- Maximální IOB z bazálů
- Maximální nebolusové IOB, které může OpenAPS použít
- Cílový rozsah pro OpenAPS
+ Maximální bazální IOB [U]
Bulgarian
POTVRDIT
Jazyk
@@ -224,4 +208,8 @@
Připojuji
DanaR
Odpojeno
+ DanaR Bluetooth zařízení
+ DanaR nastavení
+ Synchronizovat NS profil do pumpy
+ Nightscout
\ No newline at end of file
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index f67514c83a..077b4f7bcf 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -23,8 +23,6 @@
Ins:
Ratio:
Dur:
- AndroidAPS
- Einstellungen
Bolus Abgabefehler
Batterie:
OK
@@ -121,8 +119,7 @@
Einfaches Profil
Setze neuen extended Bolus:
Akzeptiere neue temp Basalrate:
- Benutze extended Bolus
- 200%)]]>
+ Benutze extended Bolus für hohe temps (\>200%)>
Möchtest du die Treatments von Nightscout abrufen
Pumpen Status verfügbar in NS
% (100% = current)
@@ -147,8 +144,7 @@
Objectives
KEIN PROFIL GESETZT
NSClient nicht installiert. Record lost!
- Benutze absolute Werte
- Use absolute basal values instead of percent in upload to NS
+ Use absolute basal values instead of percent in upload to NS
Bisher noch kein Profil von NS geladen
No change requested
NO APS SELECTED OR PROVIDED RESULT
@@ -179,20 +175,15 @@
LOOP DISABLED BY CONSTRAINTS
After processed constraints
Loop
- Limits
Low BG threshold
LOW: Temp basal 0%
Low projected:
LOW PROJECTED: Temp basal 0%
Manual enacts
- Max U/hr of Temp Basal can be set to
Carbs constraint applied
Reset Datenbanken
Minimale Dauer
- Max basal IOB
min ago
- Maximum amount of non-bolus IOB OpenAPS can deliver
- Max basal
Erneure treatments von NS
Exit
Fehlend
@@ -205,17 +196,11 @@
Einstellungen importiert
Einstellungen exportieren
Einstellungen importieren
- Alarm
Deutsch
- APS Limit
- Hoher Wert
- Niedriger Wert
- Max Basal
- Max Basal IOB
- APS Zielbereich
Max U/hr die man für eine Temp Basal setzen kann
Maximale Menge von nicht bolus IOB die OpenAPs abgeben kann
Maximalwert für deinen persönlichen Zielbereich.
Minimalwert für deinen persönlichen Zielbereich.
Bulgarian
+ Nightscout
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index f773dd3555..f092799237 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -13,11 +13,13 @@
- @string/en_lang
- @string/cs_lang
+ - @string/de_lang
- @string/bg_lang
- en
- cs
+ - de
- bg
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 53c1ff4d81..fee4e248a9 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,11 +1,8 @@
AndroidAPS
- AndroidAPS
-
- Preferences
Tratments safety
- Max allowed bolus
- Max allowed carbs
+ Max allowed bolus [U]
+ Max allowed carbs [g]
Preferences
Refresh treatments from NS
@@ -13,10 +10,9 @@
Test alarm
Reset databases
Exit
- Use extended boluses
- Use extended boluses for high temps (\>200%)
- Use absolute values
- Use absolute basal values instead of percent in upload to NS
+ Use extended boluses for >200%
+ DanaR Bluetooth device
+ Always use basal absolute values
Objective:
Gate:
@@ -114,17 +110,11 @@
After processed constraints
Set by pump
Last enacted
- Alert
Do you want to refresh treatments from Nightscout
OK
Cancel
NO APS SELECTED OR PROVIDED RESULT
Safety
- Limits
- Max basal
- Max U/hr of Temp Basal can be set to
- Max basal IOB
- Maximum amount of non-bolus IOB OpenAPS can deliver
Low BG threshold
Plugin is disabled
Constraints violation
@@ -215,16 +205,10 @@
Export settings
Import settings
German
- APS target BG range
- The minimum value you consider to be in range.
- The maximum value you consider to be in range.
- Low Value
- High Value
- APS Limits
+ The minimum BG value to be in range.
+ The maximum BG value to be in range.
Max U/hr a Temp Basal can be set to
- Maximum amount of non-bolus IOB OpenAPS can deliver
- Max Basal
- Max Basal IOB
+ Maximum basal IOB OpenAPS can deliver [U]
Bulgarian
DISMISS
Language
@@ -233,5 +217,8 @@
Connecting
Connected
Disconnected
+ Sync Nightscout profile to pump
+ DanaR pump settings
+ Nightscout
diff --git a/app/src/main/res/xml/pref_closedmode.xml b/app/src/main/res/xml/pref_closedmode.xml
index 28c73428e9..d0e3ac25e6 100644
--- a/app/src/main/res/xml/pref_closedmode.xml
+++ b/app/src/main/res/xml/pref_closedmode.xml
@@ -2,7 +2,7 @@
+ android:title="@string/loop">
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/xml/pref_language.xml b/app/src/main/res/xml/pref_language.xml
index 562089e27c..69ca28a8df 100644
--- a/app/src/main/res/xml/pref_language.xml
+++ b/app/src/main/res/xml/pref_language.xml
@@ -2,7 +2,7 @@
+ android:title="@string/configbuilder_general">
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/xml/pref_openapsma.xml b/app/src/main/res/xml/pref_openapsma.xml
index d9fc575519..f7d8699df8 100644
--- a/app/src/main/res/xml/pref_openapsma.xml
+++ b/app/src/main/res/xml/pref_openapsma.xml
@@ -1,37 +1,29 @@
+ android:key="openaps"
+ android:title="@string/openapsma">
+ android:title="@string/openapsma_low_summary" />
-
-
+ android:title="@string/openapsma_high_summary" />
+ android:title="@string/openapsma_maxbasal_summary" />
+ android:title="@string/openapsma_maxiob_summary" />
\ No newline at end of file