Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
28e5fc4f7a | ||
| 52d7defb75 | |||
| 782bbebce9 | |||
| 05386ac20f | |||
| 9f26bc8595 | |||
|
|
c35684c8f1 | ||
| 205f575db5 | |||
| ecf7011302 | |||
| 58e013a709 |
@@ -1,25 +0,0 @@
|
|||||||
import 'package:flutter/material.dart';
|
|
||||||
|
|
||||||
class QuickReminder extends StatefulWidget {
|
|
||||||
const QuickReminder({super.key});
|
|
||||||
|
|
||||||
@override
|
|
||||||
State<QuickReminder> createState() => _QuickReminderState();
|
|
||||||
}
|
|
||||||
|
|
||||||
class _QuickReminderState extends State<QuickReminder> {
|
|
||||||
@override
|
|
||||||
Widget build(BuildContext context) {
|
|
||||||
return const ListTile(
|
|
||||||
leading: Checkbox(
|
|
||||||
value: false,
|
|
||||||
onChanged: null,
|
|
||||||
),
|
|
||||||
title: TextField(
|
|
||||||
decoration: InputDecoration(
|
|
||||||
labelText: 'New Reminder',
|
|
||||||
),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
import 'package:flutter/material.dart';
|
|
||||||
|
|
||||||
import '../model/promemoria.dart';
|
|
||||||
import '../pages/EditReminder.dart';
|
|
||||||
|
|
||||||
class Reminder extends StatefulWidget {
|
|
||||||
final Promemoria? promemoria;
|
|
||||||
const Reminder(this.promemoria, {super.key});
|
|
||||||
|
|
||||||
@override
|
|
||||||
State<Reminder> createState() => _ReminderState();
|
|
||||||
}
|
|
||||||
|
|
||||||
class _ReminderState extends State<Reminder> {
|
|
||||||
bool _value = false;
|
|
||||||
|
|
||||||
void _onChanged(bool? newValue) {
|
|
||||||
setState(() {
|
|
||||||
_value = newValue ?? false;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
Widget build(BuildContext context) {
|
|
||||||
return ListTile(
|
|
||||||
leading: Checkbox(
|
|
||||||
value: _value,
|
|
||||||
onChanged: _onChanged,
|
|
||||||
),
|
|
||||||
title: Text(widget.promemoria?.description ?? 'Nessun titolo'),
|
|
||||||
subtitle: Text(DateTime.now().toString()),
|
|
||||||
onTap: () {
|
|
||||||
Navigator.push(
|
|
||||||
context,
|
|
||||||
MaterialPageRoute(builder: (context) => EditReminder(widget.promemoria)),
|
|
||||||
);
|
|
||||||
},
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,8 +1,19 @@
|
|||||||
abstract class BaseEntity{
|
abstract class BaseEntity{
|
||||||
String id = 'id';
|
static String id = 'id';
|
||||||
String title = 'Title';
|
static String title = 'Title';
|
||||||
String creationDate = 'CreationDate';
|
static String creationDate = 'CreationDate';
|
||||||
String lastEditDate = 'LastEditDate';
|
static String lastEditDate = 'LastEditDate';
|
||||||
|
|
||||||
BaseEntity();
|
static String get getId{
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
static String get getTitle{
|
||||||
|
return title;
|
||||||
|
}
|
||||||
|
static String get getCreationDate{
|
||||||
|
return creationDate;
|
||||||
|
}
|
||||||
|
static String get getLastEditDate{
|
||||||
|
return lastEditDate;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -5,15 +5,14 @@ import 'identifiers/enum/priority.dart';
|
|||||||
const String promemoriaTable = 'promemoria';
|
const String promemoriaTable = 'promemoria';
|
||||||
|
|
||||||
class Promemoria extends BaseEntity {
|
class Promemoria extends BaseEntity {
|
||||||
|
static String id = BaseEntity.getId;
|
||||||
|
static String title = BaseEntity.getTitle;
|
||||||
|
static String creationDate = BaseEntity.getCreationDate;
|
||||||
|
static String lastModificationDate = BaseEntity.getLastEditDate;
|
||||||
static String expirationDate = '';
|
static String expirationDate = '';
|
||||||
static String arrayPromemoria = '';
|
static String arrayPromemoria = '';
|
||||||
String description = '';
|
static String description = '';
|
||||||
static Priority priority = Priority.none;
|
static Priority priority = Priority.none;
|
||||||
|
|
||||||
static Color color = Color.none;
|
static Color color = Color.none;
|
||||||
|
|
||||||
Promemoria(String description) : super(){
|
|
||||||
this.description = description;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,9 +10,7 @@ class MyApp extends StatelessWidget {
|
|||||||
title: 'My App',
|
title: 'My App',
|
||||||
theme: ThemeData(
|
theme: ThemeData(
|
||||||
useMaterial3: true,
|
useMaterial3: true,
|
||||||
colorSchemeSeed: Colors.blue,
|
primaryColor: Colors.red,
|
||||||
|
|
||||||
|
|
||||||
),
|
),
|
||||||
home: Navigation()
|
home: Navigation()
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
import 'dart:ffi';
|
import 'dart:ffi';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'pages/testUI.dart';
|
||||||
import 'pages/TodayView.dart';
|
import 'pages/TodayView.dart';
|
||||||
import 'pages/InboxView.dart';
|
import 'pages/InboxView.dart';
|
||||||
import 'pages/NotesView.dart';
|
import 'pages/NotesView.dart';
|
||||||
|
import 'pages/test.dart';
|
||||||
|
|
||||||
class Navigation extends StatefulWidget {
|
class Navigation extends StatefulWidget {
|
||||||
const Navigation({super.key});
|
const Navigation({super.key});
|
||||||
@@ -15,11 +16,12 @@ class Navigation extends StatefulWidget {
|
|||||||
|
|
||||||
class _NavigationState extends State<Navigation> {
|
class _NavigationState extends State<Navigation> {
|
||||||
|
|
||||||
int _selectedIndex = 0;
|
int _selectedIndex = 3;
|
||||||
static const List<Widget> _widgetOptions = <Widget>[
|
static const List<Widget> _widgetOptions = <Widget>[
|
||||||
TodayView(),
|
TodayView(),
|
||||||
InboxView(),
|
InboxView(),
|
||||||
NotesView(),
|
NotesView(),
|
||||||
|
Test()
|
||||||
];
|
];
|
||||||
|
|
||||||
void _onItemTapped(int index) {
|
void _onItemTapped(int index) {
|
||||||
@@ -31,13 +33,17 @@ class _NavigationState extends State<Navigation> {
|
|||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
body: SafeArea(child: _widgetOptions.elementAt(_selectedIndex)),
|
appBar: AppBar(
|
||||||
|
title: Text("BottomNavBar"),
|
||||||
|
),
|
||||||
|
body: Center(child: _widgetOptions.elementAt(_selectedIndex)),
|
||||||
bottomNavigationBar: BottomNavigationBar(
|
bottomNavigationBar: BottomNavigationBar(
|
||||||
items: const <BottomNavigationBarItem>[
|
items: const <BottomNavigationBarItem>[
|
||||||
BottomNavigationBarItem(
|
BottomNavigationBarItem(
|
||||||
icon: Icon(Icons.today), label: "today"),
|
icon: Icon(Icons.calendar_today), label: "today"),
|
||||||
BottomNavigationBarItem(icon: Icon(Icons.inbox), label: "Inbox"),
|
BottomNavigationBarItem(icon: Icon(Icons.inbox), label: "Inbox"),
|
||||||
BottomNavigationBarItem(icon: Icon(Icons.note), label: "Notes"),
|
BottomNavigationBarItem(icon: Icon(Icons.note), label: "Notes"),
|
||||||
|
BottomNavigationBarItem(icon: Icon(Icons.settings), label: "Settings")
|
||||||
],
|
],
|
||||||
currentIndex: _selectedIndex,
|
currentIndex: _selectedIndex,
|
||||||
onTap: _onItemTapped,
|
onTap: _onItemTapped,
|
||||||
|
|||||||
@@ -1,136 +0,0 @@
|
|||||||
import 'package:flutter/material.dart';
|
|
||||||
import '../model/promemoria.dart';
|
|
||||||
|
|
||||||
class EditReminder extends StatefulWidget {
|
|
||||||
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";
|
|
||||||
DateTime? _date;
|
|
||||||
|
|
||||||
//Arraylist of promemoria
|
|
||||||
|
|
||||||
bool _hasDate = true;
|
|
||||||
|
|
||||||
@override
|
|
||||||
Widget build(BuildContext context) {
|
|
||||||
return Scaffold(
|
|
||||||
appBar: AppBar(
|
|
||||||
title: Text("Edit Reminder"),
|
|
||||||
),
|
|
||||||
body: SafeArea(
|
|
||||||
child: Padding(
|
|
||||||
padding: EdgeInsets.all(16.0),
|
|
||||||
child: Column(
|
|
||||||
children: <Widget>[
|
|
||||||
TextField(
|
|
||||||
controller: TextEditingController(text: widget.promemoria?.description ?? ""),
|
|
||||||
decoration: const InputDecoration(
|
|
||||||
border: OutlineInputBorder(),
|
|
||||||
labelText: 'Title',
|
|
||||||
),
|
|
||||||
),
|
|
||||||
const SizedBox(height: 10),
|
|
||||||
TextField(
|
|
||||||
onChanged: (text) {
|
|
||||||
setState(() {
|
|
||||||
_description = text;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
decoration: const InputDecoration(
|
|
||||||
border: OutlineInputBorder(),
|
|
||||||
labelText: 'Description',
|
|
||||||
),
|
|
||||||
maxLines: 6,
|
|
||||||
keyboardType: TextInputType.multiline,
|
|
||||||
),
|
|
||||||
const SizedBox(height: 10),
|
|
||||||
Row(
|
|
||||||
children: [
|
|
||||||
FilledButton(
|
|
||||||
onPressed: () async {
|
|
||||||
DateTime? newDate = await showDatePicker(
|
|
||||||
context: context,
|
|
||||||
initialDate: DateTime.now(),
|
|
||||||
firstDate: DateTime(1),
|
|
||||||
lastDate: DateTime(9999));
|
|
||||||
if (newDate != null) {
|
|
||||||
setState(() {
|
|
||||||
_date = newDate;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
child: Row(children: [
|
|
||||||
if (_date != null) Text("${_date?.day}/${_date?.month}/${_date?.year}"),
|
|
||||||
//if (_date == null) Text("Add Date"),
|
|
||||||
if (_date != null) const SizedBox(width: 10),
|
|
||||||
const Icon(Icons.calendar_month)
|
|
||||||
])),
|
|
||||||
if (_date != null) IconButton(
|
|
||||||
onPressed: () {
|
|
||||||
setState(() {
|
|
||||||
_date = null;
|
|
||||||
});
|
|
||||||
print("setting _date to ${_date}");
|
|
||||||
},
|
|
||||||
icon: Icon(Icons.close)),
|
|
||||||
if (_date == null) TextButton(
|
|
||||||
onPressed: () {
|
|
||||||
setState(() {
|
|
||||||
_date = DateTime.now();
|
|
||||||
});
|
|
||||||
print("setting _date to ${_date}");
|
|
||||||
},
|
|
||||||
child: const Row(
|
|
||||||
children: [
|
|
||||||
Icon(Icons.add),
|
|
||||||
SizedBox(width: 5),
|
|
||||||
Text("Add Today")
|
|
||||||
],
|
|
||||||
)
|
|
||||||
)
|
|
||||||
],
|
|
||||||
),
|
|
||||||
const SizedBox(height: 10),
|
|
||||||
const Spacer(),
|
|
||||||
Row(
|
|
||||||
children: [
|
|
||||||
Expanded(
|
|
||||||
child: FilledButton(
|
|
||||||
onPressed: () {
|
|
||||||
print("ciao");
|
|
||||||
},
|
|
||||||
style: ButtonStyle(
|
|
||||||
backgroundColor:
|
|
||||||
MaterialStateProperty.all(Colors.red)),
|
|
||||||
child: const Row(
|
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
|
||||||
children: [
|
|
||||||
Icon(Icons.delete),
|
|
||||||
Text("Delete"),
|
|
||||||
],
|
|
||||||
)),
|
|
||||||
),
|
|
||||||
const SizedBox(width: 10),
|
|
||||||
Expanded(
|
|
||||||
child: FilledButton(
|
|
||||||
onPressed: () {
|
|
||||||
Navigator.pop(context);
|
|
||||||
},
|
|
||||||
child: const Text("Save"),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
)
|
|
||||||
],
|
|
||||||
),
|
|
||||||
)),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,8 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
//import components
|
|
||||||
import '../Components/Reminder.dart';
|
|
||||||
|
|
||||||
class InboxView extends StatefulWidget {
|
class InboxView extends StatefulWidget {
|
||||||
const InboxView({super.key});
|
const InboxView({super.key});
|
||||||
|
|
||||||
@@ -13,15 +10,9 @@ class InboxView extends StatefulWidget {
|
|||||||
class _InboxViewState extends State<InboxView> {
|
class _InboxViewState extends State<InboxView> {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Scaffold(
|
return const Scaffold(
|
||||||
appBar: AppBar(
|
body: Center(
|
||||||
title: const Text('Inbox'),
|
child: Icon(Icons.inbox),
|
||||||
),
|
|
||||||
body: ListView(
|
|
||||||
children: const <Widget>[
|
|
||||||
/* Reminder(),
|
|
||||||
Reminder(),*/
|
|
||||||
],
|
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
//import components
|
|
||||||
import '../Components/Reminder.dart';
|
|
||||||
import '../Components/QuickReminder.dart';
|
|
||||||
import '../model/promemoria.dart';
|
|
||||||
|
|
||||||
class TodayView extends StatefulWidget {
|
class TodayView extends StatefulWidget {
|
||||||
const TodayView({super.key});
|
const TodayView({super.key});
|
||||||
|
|
||||||
@@ -13,49 +8,12 @@ class TodayView extends StatefulWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class _TodayViewState extends State<TodayView> {
|
class _TodayViewState extends State<TodayView> {
|
||||||
|
|
||||||
var _selectedDate = DateTime.now();
|
|
||||||
|
|
||||||
List<Promemoria> listaPromemoria = [
|
|
||||||
new Promemoria("Primo promemoria"),
|
|
||||||
new Promemoria("Secondo promemoria"),
|
|
||||||
new Promemoria("Terzo promemoria"),
|
|
||||||
new Promemoria("Quarto promemoria"),
|
|
||||||
new Promemoria("Quinto promemoria"),
|
|
||||||
new Promemoria("Sesto promemoria"),
|
|
||||||
];
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Scaffold(
|
return const Scaffold(
|
||||||
appBar: AppBar(
|
body: Center(
|
||||||
title: FilledButton(
|
child: Icon(Icons.calendar_today)
|
||||||
onPressed: () async {
|
)
|
||||||
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())
|
|
||||||
),
|
|
||||||
),
|
|
||||||
body: ListView(
|
|
||||||
children: [
|
|
||||||
ListView.builder(
|
|
||||||
scrollDirection: Axis.vertical,
|
|
||||||
shrinkWrap: true,
|
|
||||||
itemCount: listaPromemoria.length,
|
|
||||||
itemBuilder: (BuildContext context, int index){
|
|
||||||
return Reminder(
|
|
||||||
listaPromemoria[index]
|
|
||||||
);
|
|
||||||
},
|
|
||||||
),
|
|
||||||
QuickReminder(),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user