Continue trying to fix issue with edited items not notifying parent.

This commit is contained in:
Hyperling 2025-03-07 13:26:02 -07:00
parent 88d57e217f
commit 8d7591b766

View File

@ -473,69 +473,71 @@ class _TrackedItemInputDialogState extends State<TrackedItemInputDialog> {
onPressed: () {
if (_formKey.currentState!.validate()) {
_formKey.currentState!.save();
setState(() {
switch (_type) {
case ItemType.expense:
Expense expense = Expense(
id: _id,
name: _name,
amount: _amount,
frequency: _freq,
description: _desc,
);
if (_id != null) {
DatabaseHelper.instance.updateExpense(
expense,
setState(
() {
switch (_type) {
case ItemType.expense:
Expense expense = Expense(
id: _id,
name: _name,
amount: _amount,
frequency: _freq,
description: _desc,
);
} else {
DatabaseHelper.instance.addExpense(
expense,
if (_id != null) {
DatabaseHelper.instance.updateExpense(
expense,
);
} else {
DatabaseHelper.instance.addExpense(
expense,
);
}
break;
case ItemType.income:
Income income = Income(
id: _id,
name: _name,
amount: _amount,
frequency: _freq,
description: _desc,
);
}
break;
case ItemType.income:
Income income = Income(
id: _id,
name: _name,
amount: _amount,
frequency: _freq,
description: _desc,
);
if (_id != null) {
DatabaseHelper.instance.updateIncome(
income,
if (_id != null) {
DatabaseHelper.instance.updateIncome(
income,
);
} else {
DatabaseHelper.instance.addIncome(
income,
);
}
break;
case ItemType.asset:
Asset asset = Asset(
id: _id,
name: _name,
amount: _amount,
description: _desc,
);
} else {
DatabaseHelper.instance.addIncome(
income,
if (_id != null) {
DatabaseHelper.instance.updateAsset(
asset,
);
} else {
DatabaseHelper.instance.addAsset(
asset,
);
}
break;
default:
throw UnimplementedError(
"No code for type ${_type!.title}",
);
}
break;
case ItemType.asset:
Asset asset = Asset(
id: _id,
name: _name,
amount: _amount,
description: _desc,
);
if (_id != null) {
DatabaseHelper.instance.updateAsset(
asset,
);
} else {
DatabaseHelper.instance.addAsset(
asset,
);
}
break;
default:
throw UnimplementedError(
"No code for type ${_type!.title}",
);
}
});
widget.notifyParent();
Navigator.of(context).pop();
}
widget.notifyParent();
Navigator.of(context).pop();
},
);
}
},
icon: Icon(Icons.save),