正在查看: xDrip+ v04633772025.07.16 应用的 CalibrationDataTable.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: xDrip+ v04633772025.07.16 应用的 CalibrationDataTable.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.eveningoutpost.dexdrip.tables;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.graphics.Color;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import androidx.drawerlayout.widget.DrawerLayout;
import com.eveningoutpost.dexdrip.BaseListActivity;
import com.eveningoutpost.dexdrip.NavigationDrawerFragment;
import com.eveningoutpost.dexdrip.models.Calibration;
import com.eveningoutpost.dexdrip.models.JoH;
import com.eveningoutpost.dexdrip.utilitymodels.BgGraphBuilder;
import com.eveningoutpost.dexdrip.xdrip;
import java.util.ArrayList;
import java.util.List;
public class CalibrationDataTable extends BaseListActivity implements NavigationDrawerFragment.NavigationDrawerCallbacks {
private NavigationDrawerFragment mNavigationDrawerFragment;
@Override
public void onCreate(Bundle bundle) {
setTheme(2131820787);
super.onCreate(bundle);
setContentView(2131493067);
}
@Override
protected void onResume() {
super.onResume();
NavigationDrawerFragment navigationDrawerFragment = (NavigationDrawerFragment) getFragmentManager().findFragmentById(2131296801);
this.mNavigationDrawerFragment = navigationDrawerFragment;
navigationDrawerFragment.setUp(2131296801, (DrawerLayout) findViewById(2131296561), "Calibration Data Table", this);
getData();
}
@Override
public void onNavigationDrawerItemSelected(int i) {
this.mNavigationDrawerFragment.swapContext(i);
}
private void getData() {
setListAdapter(new CalibrationDataCursorAdapter(this, Calibration.latest(50)));
}
public static class CalibrationDataCursorAdapterViewHolder {
TextView raw_data_id;
TextView raw_data_slope;
TextView raw_data_timestamp;
TextView raw_data_value;
public CalibrationDataCursorAdapterViewHolder(View view) {
this.raw_data_id = (TextView) view.findViewById(2131296877);
this.raw_data_value = (TextView) view.findViewById(2131296881);
this.raw_data_slope = (TextView) view.findViewById(2131296879);
this.raw_data_timestamp = (TextView) view.findViewById(2131296880);
}
}
public static class CalibrationDataCursorAdapter extends BaseAdapter {
private final List<Calibration> calibrations;
private final Context context;
CalibrationDataCursorAdapter(Context context, List<Calibration> list) {
this.context = context;
this.calibrations = list == null ? new ArrayList<>() : list;
}
View newView(Context context, ViewGroup viewGroup) {
View inflate = LayoutInflater.from(context).inflate(2131493068, viewGroup, false);
inflate.setTag(new CalibrationDataCursorAdapterViewHolder(inflate));
return inflate;
}
void bindView(View view, final Context context, final Calibration calibration) {
CalibrationDataCursorAdapterViewHolder calibrationDataCursorAdapterViewHolder = (CalibrationDataCursorAdapterViewHolder) view.getTag();
calibrationDataCursorAdapterViewHolder.raw_data_id.setText(JoH.qs(calibration.bg, 4) + " " + BgGraphBuilder.unitized_string_static(calibration.bg));
calibrationDataCursorAdapterViewHolder.raw_data_value.setText("raw: " + JoH.qs(calibration.estimate_raw_at_time_of_calibration, 4));
calibrationDataCursorAdapterViewHolder.raw_data_slope.setText("slope: " + JoH.qs(calibration.slope, 4) + " intercept: " + JoH.qs(calibration.intercept, 4));
calibrationDataCursorAdapterViewHolder.raw_data_timestamp.setText(JoH.dateTimeText(calibration.timestamp) + " (" + JoH.dateTimeText(calibration.raw_timestamp) + ")");
if (calibration.isNote()) {
view.setBackgroundColor(Color.parseColor("#004400"));
} else if (!calibration.isValid()) {
view.setBackgroundColor(Color.parseColor("#660000"));
} else {
view.setBackgroundColor(Color.parseColor("#212121"));
}
view.setLongClickable(true);
view.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view2) {
DialogInterface.OnClickListener onClickListener = new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
if (i != -1) {
return;
}
Calibration.clear_byuuid(calibration.uuid, false);
CalibrationDataCursorAdapter.this.notifyDataSetChanged();
}
};
new AlertDialog.Builder(context).setMessage("Disable this calibration?\nFlagged calibrations will no longer have an effect.").setPositiveButton(xdrip.gs(2131757071), onClickListener).setNegativeButton(xdrip.gs(2131755900), onClickListener).show();
return true;
}
});
}
@Override
public int getCount() {
return this.calibrations.size();
}
@Override
public Calibration getItem(int i) {
return this.calibrations.get(i);
}
@Override
public long getItemId(int i) {
return getItem(i).getId().longValue();
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
if (view == null) {
view = newView(this.context, viewGroup);
}
bindView(view, this.context, getItem(i));
return view;
}
}
}