9 Commits
joe ... Tito

Author SHA1 Message Date
Tito Arrigo
51f964833e boooooo 2023-09-29 10:25:34 +02:00
simonmaggini
5c68d85b98 listViw builder 2023-09-29 09:50:48 +02:00
Tito Arrigo
7d1bec6b0c grafica quasi finita 2023-09-29 08:28:08 +02:00
Tito Arrigo
c2824c99a4 merge 2023-09-28 13:04:42 +02:00
Tito Arrigo
e061871c4f grafica pagina TodayView.dart 2023-09-28 11:46:08 +02:00
Tito Arrigo
29a54bbcbc grafica pagina TodayView.dart 2023-09-28 09:49:09 +02:00
Tito Arrigo
330d0e4c61 Merge branch 'Tito' into dev 2023-09-27 14:04:34 +02:00
Tito Arrigo
6a05861341 inizzializazione pagine 2023-09-27 14:02:53 +02:00
Tito Arrigo
4006030f5b added GoggleServie-Info.plist 2023-09-27 13:48:10 +02:00
9 changed files with 286 additions and 48 deletions

View File

@@ -0,0 +1,25 @@
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',
),
),
);
}
}

View File

@@ -0,0 +1,40 @@
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)),
);
},
);
}
}

View File

@@ -1,19 +1,8 @@
abstract class BaseEntity{ abstract class BaseEntity{
static String id = 'id'; String id = 'id';
static String title = 'Title'; String title = 'Title';
static String creationDate = 'CreationDate'; String creationDate = 'CreationDate';
static String lastEditDate = 'LastEditDate'; String lastEditDate = 'LastEditDate';
static String get getId{ BaseEntity();
return id;
}
static String get getTitle{
return title;
}
static String get getCreationDate{
return creationDate;
}
static String get getLastEditDate{
return lastEditDate;
}
} }

View File

@@ -5,14 +5,15 @@ 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 = '';
static String description = ''; 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;
}
} }

View File

@@ -10,7 +10,9 @@ class MyApp extends StatelessWidget {
title: 'My App', title: 'My App',
theme: ThemeData( theme: ThemeData(
useMaterial3: true, useMaterial3: true,
primaryColor: Colors.red, colorSchemeSeed: Colors.blue,
), ),
home: Navigation() home: Navigation()
); );

View File

@@ -1,11 +1,10 @@
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});
@@ -16,12 +15,11 @@ class Navigation extends StatefulWidget {
class _NavigationState extends State<Navigation> { class _NavigationState extends State<Navigation> {
int _selectedIndex = 3; int _selectedIndex = 0;
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) {
@@ -33,17 +31,13 @@ class _NavigationState extends State<Navigation> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Scaffold( return Scaffold(
appBar: AppBar( body: SafeArea(child: _widgetOptions.elementAt(_selectedIndex)),
title: Text("BottomNavBar"),
),
body: Center(child: _widgetOptions.elementAt(_selectedIndex)),
bottomNavigationBar: BottomNavigationBar( bottomNavigationBar: BottomNavigationBar(
items: const <BottomNavigationBarItem>[ items: const <BottomNavigationBarItem>[
BottomNavigationBarItem( BottomNavigationBarItem(
icon: Icon(Icons.calendar_today), label: "today"), icon: Icon(Icons.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,

136
lib/pages/EditReminder.dart Normal file
View File

@@ -0,0 +1,136 @@
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"),
),
),
],
)
],
),
)),
);
}
}

View File

@@ -1,5 +1,8 @@
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});
@@ -10,9 +13,15 @@ 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 const Scaffold( return Scaffold(
body: Center( appBar: AppBar(
child: Icon(Icons.inbox), title: const Text('Inbox'),
),
body: ListView(
children: const <Widget>[
/* Reminder(),
Reminder(),*/
],
) )
); );
} }

View File

@@ -1,5 +1,10 @@
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});
@@ -8,12 +13,49 @@ 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 const Scaffold( return Scaffold(
body: Center( appBar: AppBar(
child: Icon(Icons.calendar_today) title: FilledButton(
) 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(),
],
),
); );
} }
} }