HappyCamperProto2025/lib/templates_page.dart

45 lines
1.2 KiB
Dart

import 'package:flutter/material.dart';
import 'package:happy_camper_proto/listtemplates.dart';
import 'package:happy_camper_proto/template_edit_page.dart';
class TemplatesPage extends StatefulWidget {
const TemplatesPage({super.key, required this.templates});
final List<ListTemplate> templates;
@override
State<StatefulWidget> createState() => _TemplatesPageState();
}
class _TemplatesPageState extends State<TemplatesPage> {
late List<ListTemplate> templates;
@override
void initState() {
templates = widget.templates;
super.initState();
}
@override
Widget build(BuildContext context) {
return ListView.separated(
itemCount: templates.length,
separatorBuilder: (context, index) => const Padding(
padding: EdgeInsets.symmetric(horizontal: 20),
child: Divider(
color: Colors.grey,
),
),
itemBuilder: (context, index) => ListTile(
title: Text(templates[index].name),
subtitle: Text("${templates[index].length} lists"),
onTap: () {
Navigator.of(context).push(MaterialPageRoute(
builder: (context) => TemplateEditPage(
template: templates[index],
)));
},
),
);
}
}