X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2FTransactionListAdapter.java;h=1ec01132a1505a4000f22f0d03424e308ad366ed;hp=d0b2e9433e7c8a5c5893c4f2674cd4caa02251a0;hb=fbbe23b2f69c6a845323808d540ac08a032e788f;hpb=6c58c1072c9af6ea0d0f52baeae7f95ba7f7ee2f diff --git a/app/src/main/java/net/ktnx/mobileledger/TransactionListAdapter.java b/app/src/main/java/net/ktnx/mobileledger/TransactionListAdapter.java index d0b2e943..1ec01132 100644 --- a/app/src/main/java/net/ktnx/mobileledger/TransactionListAdapter.java +++ b/app/src/main/java/net/ktnx/mobileledger/TransactionListAdapter.java @@ -20,7 +20,6 @@ package net.ktnx.mobileledger; import android.content.Context; import android.content.res.Resources; import android.database.sqlite.SQLiteDatabase; -import android.os.Build; import android.support.annotation.NonNull; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; @@ -32,7 +31,8 @@ import android.widget.TableRow; import android.widget.TextView; import net.ktnx.mobileledger.model.LedgerTransaction; -import net.ktnx.mobileledger.model.LedgerTransactionItem; +import net.ktnx.mobileledger.model.LedgerTransactionAccount; +import net.ktnx.mobileledger.utils.Globals; import net.ktnx.mobileledger.utils.MLDB; import java.util.Iterator; @@ -49,41 +49,34 @@ class TransactionListAdapter public void onBindViewHolder(@NonNull TransactionRowHolder holder, int position) { LedgerTransaction tr = transactions.get(position); Context ctx = holder.row.getContext(); - Resources rm = ctx.getResources(); - try (SQLiteDatabase db = MLDB.getReadableDatabase(ctx.getApplicationContext())) { - tr.loadData(db); - holder.tvDescription - .setText(String.format("%s\n%s", tr.getDescription(), tr.getDate())); - TableLayout tbl = holder.row.findViewById(R.id.transaction_row_acc_amounts); - tbl.removeAllViews(); - for (Iterator it = tr.getItemsIterator(); it.hasNext(); ) { - LedgerTransactionItem acc = it.next(); - TableRow row = new TableRow(holder.row.getContext()); - TextView child = new TextView(ctx); - child.setText(acc.getShortAccountName()); - row.addView(child); - child = new TextView(ctx); - child.setText(acc.toString()); - row.addView(child); - tbl.addView(row); - } + try (SQLiteDatabase db = MLDB.getReadableDatabase(ctx)) { + tr.loadData(db); - if (position % 2 == 0) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) holder.row - .setBackgroundColor( - rm.getColor(R.color.table_row_even_bg, ctx.getTheme())); - else holder.row.setBackgroundColor(rm.getColor(R.color.table_row_even_bg)); - } - else { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) holder.row - .setBackgroundColor( - rm.getColor(R.color.drawer_background, ctx.getTheme())); - else holder.row.setBackgroundColor(rm.getColor(R.color.drawer_background)); - } + holder.tvDescription + .setText(String.format("%s\n%s", tr.getDescription(), tr.getDate())); + TableLayout tbl = holder.row.findViewById(R.id.transaction_row_acc_amounts); + tbl.removeAllViews(); + for (Iterator it = tr.getAccountsIterator(); it.hasNext(); ) { + LedgerTransactionAccount acc = it.next(); + TableRow row = new TableRow(holder.row.getContext()); + TextView child = new TextView(ctx); + child.setText(acc.getShortAccountName()); + row.addView(child); + child = new TextView(ctx); + child.setText(acc.toString()); + row.addView(child); + tbl.addView(row); + } - holder.row.setTag(R.id.POS, position); + if (position % 2 == 0) { + holder.row.setBackgroundColor(Globals.table_row_even_bg); } + else { + holder.row.setBackgroundColor(Globals.table_row_odd_bg); + } + + holder.row.setTag(R.id.POS, position); } }