package com.code44.finance.ui.reports.trends;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.code44.finance.R;
import com.code44.finance.data.model.Currency;
import com.code44.finance.graphs.line.LineGraphData;
import com.code44.finance.graphs.line.LineGraphView;
import com.code44.finance.utils.MoneyFormatter;
public class TrendsGraphView extends LinearLayout {
private final LineGraphView trendsLineGraphView;
private final TextView maxExpenseTextView;
private final TextView totalIncomeTextView;
private final TextView totalExpenseTextView;
public TrendsGraphView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public TrendsGraphView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
setOrientation(VERTICAL);
final int padding = getResources().getDimensionPixelSize(R.dimen.keyline);
setPadding(padding, padding, padding, padding);
setBackgroundResource(R.drawable.btn_borderless);
inflate(context, R.layout.view_trends_graph, this);
// Get views
trendsLineGraphView = (LineGraphView) findViewById(R.id.trendsLineGraphView);
maxExpenseTextView = (TextView) findViewById(R.id.maxExpenseTextView);
totalIncomeTextView = (TextView) findViewById(R.id.totalIncomeTextView);
totalExpenseTextView = (TextView) findViewById(R.id.totalExpenseTextView);
if (isInEditMode()) {
maxExpenseTextView.setText("128.04 $");
totalIncomeTextView.setText("5892.54 $");
totalExpenseTextView.setText("2477.00 $");
}
}
public void setTotalIncomeAndExpense(long totalIncome, long totalExpense, Currency currency) {
totalIncomeTextView.setText(MoneyFormatter.format(currency, totalIncome));
totalExpenseTextView.setText(MoneyFormatter.format(currency, totalExpense));
}
public void setLineGraphData(LineGraphData lineGraphData, Currency currency) {
trendsLineGraphView.setLineGraphData(lineGraphData);
maxExpenseTextView.setText(MoneyFormatter.format(currency, (long) lineGraphData.getMaxValue()));
}
}