2022-11-01 08:23:35 +01:00
|
|
|
// SPDX-FileCopyrightText: 2022 Iconica
|
|
|
|
//
|
|
|
|
// SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
|
2022-10-12 11:43:37 +02:00
|
|
|
import 'package:flutter/material.dart';
|
2022-11-29 09:43:55 +01:00
|
|
|
import 'package:flutter_form_wizard/flutter_form.dart';
|
2022-10-12 11:43:37 +02:00
|
|
|
import 'package:form_example/template_page.dart';
|
|
|
|
import 'package:intl/intl.dart';
|
|
|
|
|
|
|
|
class DatePage extends StatefulWidget {
|
|
|
|
const DatePage({
|
|
|
|
required this.dateController,
|
|
|
|
super.key,
|
|
|
|
});
|
|
|
|
|
|
|
|
final FlutterFormInputPlainTextController dateController;
|
|
|
|
|
|
|
|
@override
|
|
|
|
State<DatePage> createState() => _DatePageState();
|
|
|
|
}
|
|
|
|
|
|
|
|
class _DatePageState extends State<DatePage> {
|
|
|
|
@override
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
var size = MediaQuery.of(context).size;
|
|
|
|
var fontSize = size.height / 40;
|
|
|
|
|
|
|
|
return TemplatePage(
|
|
|
|
size: size,
|
|
|
|
fontSize: fontSize,
|
|
|
|
pageNumber: 4,
|
|
|
|
amountOfPages: 4,
|
|
|
|
title: "Please enter a date",
|
|
|
|
flutterFormWidgets: [
|
|
|
|
Padding(
|
|
|
|
padding: const EdgeInsets.fromLTRB(40, 0, 40, 40),
|
2022-10-13 10:08:52 +02:00
|
|
|
child: FlutterFormInputDateTime(
|
2022-10-13 15:21:19 +02:00
|
|
|
inputType: FlutterFormDateTimeType.range,
|
2022-10-12 11:43:37 +02:00
|
|
|
dateFormat: DateFormat.yMd(),
|
2022-10-13 10:08:52 +02:00
|
|
|
firstDate: DateTime.now(),
|
2022-10-13 15:21:19 +02:00
|
|
|
initialDateTimeRange: DateTimeRange(
|
|
|
|
start: DateTime.now(),
|
|
|
|
end: DateTime.now().add(
|
|
|
|
const Duration(days: 7),
|
|
|
|
),
|
|
|
|
),
|
2022-10-13 15:42:10 +02:00
|
|
|
label: const Text("Custom date label"),
|
2022-10-12 11:43:37 +02:00
|
|
|
controller: widget.dateController,
|
|
|
|
),
|
|
|
|
),
|
|
|
|
],
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|