fixed incorrect cast
This commit is contained in:
@@ -1,7 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
import '../example_data.dart';
|
import '../example_data.dart';
|
||||||
|
import '../model/callback_models/create_task_request.dart';
|
||||||
import '../model/task.dart';
|
import '../model/task.dart';
|
||||||
|
import '../service/tools.dart';
|
||||||
import 'task_edit_page.dart';
|
import 'task_edit_page.dart';
|
||||||
|
|
||||||
class TaskOverviewPage extends StatefulWidget {
|
class TaskOverviewPage extends StatefulWidget {
|
||||||
@@ -38,15 +40,22 @@ class _TaskOverviewPageState extends State<TaskOverviewPage> {
|
|||||||
key: Key(task.id),
|
key: Key(task.id),
|
||||||
title: Text(task.title),
|
title: Text(task.title),
|
||||||
subtitle: Text(task.description),
|
subtitle: Text(task.description),
|
||||||
onTap: () => onTaskTapped(task),
|
onTap: () async {
|
||||||
|
final result = await onTaskTapped(task);
|
||||||
|
if (result != null) {
|
||||||
|
tasks.remove(task);
|
||||||
|
tasks.add(result.toTask(id: task.id, position: task.position));
|
||||||
|
setState(() {});
|
||||||
|
}
|
||||||
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<Task?> onTaskTapped(Task task) async {
|
Future<CreateTaskRequest?> onTaskTapped(Task task) async {
|
||||||
final result = await Navigator.of(
|
final result = await Navigator.of(
|
||||||
context,
|
context,
|
||||||
).pushNamed(TaskEditPage.routeName, arguments: task);
|
).pushNamed(TaskEditPage.routeName, arguments: task);
|
||||||
return result as Task?;
|
return result as CreateTaskRequest?;
|
||||||
}
|
}
|
||||||
|
|
||||||
List<Task> reorderList(List<Task> tasks, oldIndex, newIndex) {
|
List<Task> reorderList(List<Task> tasks, oldIndex, newIndex) {
|
||||||
@@ -65,10 +74,12 @@ class _TaskOverviewPageState extends State<TaskOverviewPage> {
|
|||||||
void onCreateTaskTapped() async {
|
void onCreateTaskTapped() async {
|
||||||
//TODO: example data call
|
//TODO: example data call
|
||||||
final result =
|
final result =
|
||||||
await Navigator.of(context).pushNamed(TaskEditPage.routeName) as Task?;
|
await Navigator.of(context).pushNamed(TaskEditPage.routeName)
|
||||||
|
as CreateTaskRequest?;
|
||||||
|
|
||||||
if (result != null) {
|
if (result != null) {
|
||||||
tasks.add(result);
|
tasks.add(result.toTask(id: generateId(), position: tasks.length));
|
||||||
|
setState(() {});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user