Error messages
This commit is contained in:
77
lib/widgets/item_detail_dialog.dart
Normal file
77
lib/widgets/item_detail_dialog.dart
Normal file
@@ -0,0 +1,77 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import '../models/listitem.dart';
|
||||
import '../services/dbhelper.dart';
|
||||
|
||||
class ItemDetailDialog extends StatelessWidget {
|
||||
const ItemDetailDialog({
|
||||
super.key,
|
||||
this.item,
|
||||
required this.checklistId,
|
||||
});
|
||||
final Item? item;
|
||||
final int checklistId;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final TextEditingController titleCon = TextEditingController();
|
||||
final TextEditingController descCon = TextEditingController();
|
||||
bool isOwner = true;
|
||||
String dialogTitle = 'Add item';
|
||||
|
||||
if (item != null) {
|
||||
titleCon.text = item!.title;
|
||||
descCon.text = item!.description;
|
||||
isOwner = DbHelper.isOwner(item!.ownerId);
|
||||
isOwner ? dialogTitle = 'Edit Item' : dialogTitle = item!.title;
|
||||
}
|
||||
|
||||
return AlertDialog(
|
||||
title: Text(dialogTitle),
|
||||
content: Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
if (isOwner)
|
||||
TextFormField(
|
||||
controller: titleCon,
|
||||
textInputAction: TextInputAction.next,
|
||||
decoration: const InputDecoration(
|
||||
label: Text('Title'),
|
||||
),
|
||||
),
|
||||
if (isOwner)
|
||||
TextFormField(
|
||||
controller: descCon,
|
||||
onFieldSubmitted: (value) {
|
||||
_itemSaved(titleCon.text, descCon.text);
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
decoration: const InputDecoration(
|
||||
label: Text('Description'),
|
||||
),
|
||||
),
|
||||
if (!isOwner) Text(item!.description),
|
||||
],
|
||||
),
|
||||
actions: [
|
||||
TextButton(
|
||||
onPressed: () {
|
||||
_itemSaved(titleCon.text, descCon.text);
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
child: const Text('save'),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
void _itemSaved(String title, String description) {
|
||||
DbHelper.addOrUpdateItem(
|
||||
checklistId,
|
||||
title,
|
||||
description,
|
||||
item?.id,
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user