Merge remote-tracking branch 'origin/dev' into dev

# Conflicts:
#	lib/database/database.dart
#	lib/main.dart
#	lib/model/note.dart
#	lib/model/promemoria.dart
#	lib/navigation.dart
This commit is contained in:
Giulia
2023-09-29 15:15:04 +02:00
22 changed files with 1970 additions and 266 deletions

View File

@@ -1,20 +1,26 @@
import 'package:flutter/material.dart';
import 'package:progetto_m335_flutter/model/promemoria.dart';
class EditReminder extends StatefulWidget {
const EditReminder({super.key});
final Promemoria? promemoria;
const EditReminder(this.promemoria, {super.key});
@override
State<EditReminder> createState() => _EditReminderState();
}
class _EditReminderState extends State<EditReminder> {
String _title = "ciaciao";
String _description = "description";
final String _title = "ciaciao";
String _description = "";
DateTime? _date;
//Arraylist of promemoria
bool _hasDate = true;
@override
void initState() {
// TODO: implement initState
_description = widget.promemoria?.description ?? "";
super.initState();
}
@override
Widget build(BuildContext context) {
@@ -27,16 +33,23 @@ class _EditReminderState extends State<EditReminder> {
padding: EdgeInsets.all(16.0),
child: Column(
children: <Widget>[
TextField(
controller: TextEditingController(text: _title),
TextFormField(
initialValue: widget.promemoria?.title ?? "",
decoration: const InputDecoration(
border: OutlineInputBorder(),
labelText: 'Title',
),
onChanged: (text) {
setState(() {
widget.promemoria?.setTitle(text);
});
},
),
const SizedBox(height: 10),
TextField(
TextFormField(
initialValue: widget.promemoria?.description ?? "",
onChanged: (text) {
print(text);
setState(() {
_description = text;
});

View File

@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:progetto_m335_flutter/database/database.dart';
//import components
import '../Components/Reminder.dart';
@@ -16,13 +17,29 @@ class _TodayViewState extends State<TodayView> {
var _selectedDate = DateTime.now();
List<Promemoria> listaPromemoria = [
new Promemoria("Primo promemoria"),
new Promemoria("Secondo promemoria"),
new Promemoria("Terzo promemoria"),
];
List<Promemoria> listaPromemoria = [];
NoteDatabase noteDatabase = NoteDatabase.instance;
/*[
Promemoria.today("Primo promemoria", DateTime.now().toString(), DateTime.now().toString(), DateTime.now().toString(), "Descrizione primo promemoria"),
Promemoria.today("Secondo promemoria", DateTime.now().toString(), DateTime.now().toString(), DateTime.now().toString(), "Descrizione secondo promemoria"),
];*/
getAllPromemoria() async {
final db = await noteDatabase.database;
List<Promemoria> temp = await noteDatabase.getAllPromemoria() as List<Promemoria>;
setState(() {
listaPromemoria = temp;
});
}
@override
void initState() {
// TODO: implement initState
getAllPromemoria();
super.initState();
}
@override
Widget build(BuildContext context) {
@@ -30,30 +47,31 @@ class _TodayViewState extends State<TodayView> {
appBar: AppBar(
title: FilledButton(
onPressed: () async {
DateTime? newDate = await showDatePicker(context: context, initialDate: DateTime.now(), firstDate: DateTime(1), lastDate: DateTime(9999));
DateTime? newDate = await showDatePicker(context: context,
initialDate: DateTime.now(),
firstDate: DateTime(1),
lastDate: DateTime(9999));
if (newDate != null) {
setState(() {
_selectedDate = newDate;
});
}
},
child: Text(_selectedDate.day.toString() + "/" + _selectedDate.month.toString() + "/" + _selectedDate.year.toString())
child: Text("${_selectedDate.day}/${_selectedDate.month}/${_selectedDate.year}")
),
),
body: ListView(
children: [
ListView.builder(
scrollDirection: Axis.vertical,
shrinkWrap: true,
itemCount: listaPromemoria.length,
itemBuilder: (BuildContext context, int index){
return Reminder(
listaPromemoria[index]
);
},
),
QuickReminder(),
],
body:
ListView.builder(
scrollDirection: Axis.vertical,
shrinkWrap: true,
itemCount: (listaPromemoria!.length + 1),
itemBuilder: (BuildContext context, int index) {
if (index == listaPromemoria.length) {
return QuickReminder();
} else {
return Reminder(listaPromemoria[index]);
}
},
),
);
}

View File

@@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:progetto_m335_flutter/database/database.dart';
import 'package:progetto_m335_flutter/model/note.dart';
import 'package:progetto_m335_flutter/model/promemoria.dart';
import '../database/database.dart';
@@ -22,11 +23,43 @@ class _TestState extends State<Test> {
}
Future<void> _printdata() async {
var nota = Note.newConstructor(
"nota 5",
"2023-09-56",
"2028-03-1",
"1,2,3,4,5",
"Questo è un esempio di nota gesu benedetto 1.");
var promemoria = Promemoria.newConstructor(
"promemoria 5",
"2023-09-56",
"2028-03-1",
"2028-03-1",
"1,2,3,4,5",
"Questo è un esempio di promemoria gesu benedetto 1.",
"alta",
"rosso");
noteDatabase.addNote(nota);
noteDatabase.addPromemoria(promemoria);
final db = await noteDatabase.database;
print("Printing data");
print((await noteDatabase.getAllPromemoria()).first);
print((await noteDatabase.getAllNote()).first);
print("promemoria");
print(await db.query(promemoriaTable));
print("note");
print(await db.query(noteTable));
print("Data printed");
print("savedata from database to firebase");
noteDatabase.syncData();
print("data saved");
}
@override