package info.nightscout.androidaps.plugins.Overview; import com.squareup.otto.Subscribe; import org.json.JSONArray; import org.json.JSONException; import info.nightscout.androidaps.MainApp; import info.nightscout.androidaps.R; import info.nightscout.androidaps.interfaces.PluginBase; import info.nightscout.androidaps.plugins.Overview.events.EventDismissNotification; import info.nightscout.androidaps.plugins.Overview.events.EventNewNotification; import info.nightscout.utils.SP; /** * Created by mike on 05.08.2016. */ public class OverviewPlugin implements PluginBase { public static Double bgTargetLow = 80d; public static Double bgTargetHigh = 180d; public QuickWizard quickWizard = new QuickWizard(); public NotificationStore notificationStore = new NotificationStore(); public OverviewPlugin() { String storedData = SP.getString("QuickWizard", "[]"); try { quickWizard.setData(new JSONArray(storedData)); } catch (JSONException e) { e.printStackTrace(); } MainApp.bus().register(this); } @Override public String getFragmentClass() { return OverviewFragment.class.getName(); } @Override public String getName() { return MainApp.instance().getString(R.string.overview); } @Override public String getNameShort() { String name = MainApp.sResources.getString(R.string.overview_shortname); if (!name.trim().isEmpty()){ //only if translation exists return name; } // use long name as fallback return getName(); } @Override public boolean isEnabled(int type) { return type == GENERAL; } @Override public boolean isVisibleInTabs(int type) { return true; } @Override public boolean canBeHidden(int type) { return false; } @Override public void setFragmentEnabled(int type, boolean fragmentEnabled) { // Always enabled } @Override public void setFragmentVisible(int type, boolean fragmentVisible) { // Always visible } @Override public int getType() { return PluginBase.GENERAL; } @Subscribe public void onStatusEvent(final EventNewNotification n) { notificationStore.add(n.notification); } @Subscribe public void onStatusEvent(final EventDismissNotification n) { notificationStore.remove(n.id); } }