From 8ef8e0dad92bb14e5b8d0cce8f8019fa414688b3 Mon Sep 17 00:00:00 2001 From: Hyperling Date: Fri, 7 Mar 2025 12:55:34 -0700 Subject: [PATCH] Start filling in TODO's with Income and Asset code.. --- lib/pages/tracked_item.dart | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/lib/pages/tracked_item.dart b/lib/pages/tracked_item.dart index 85f7894..93b05c4 100644 --- a/lib/pages/tracked_item.dart +++ b/lib/pages/tracked_item.dart @@ -10,8 +10,6 @@ import '/models/expense.dart'; import '/models/frequency.dart'; import '/db.dart'; -// TODO: Make this a generic UI based on a superclass of Expense, Income, and Assets. - class TrackedItemPage extends StatefulWidget { final Future> assetsToLoad; @@ -144,13 +142,19 @@ class _TrackedItemPageState extends State { snapshot.data!.remove(curr); switch (direction) { case DismissDirection.startToEnd: + // Remove the item from the database. if (curr is Expense) { - DatabaseHelper.instance - .removeExpense(curr.id!); + DatabaseHelper.instance.removeExpense( + curr.id!, + ); } else if (curr is Income) { - // TODO + DatabaseHelper.instance.removeIncome( + curr.id!, + ); } else if (curr is Asset) { - // TODO + DatabaseHelper.instance.removeAsset( + curr.id!, + ); } else { throw UnimplementedError( "Cannot remove unimplemented item type."); @@ -304,10 +308,10 @@ class _TrackedItemInputDialogState extends State { DatabaseHelper.instance.addExpense(widget.entry!); break; case ItemType.income: - // TODO + DatabaseHelper.instance.addIncome(widget.entry!); break; case ItemType.asset: - // TODO + DatabaseHelper.instance.addAsset(widget.entry!); break; default: throw UnimplementedError(