From 1b5a529fd1dd3fd32edd7613dcacea94e90f16c9 Mon Sep 17 00:00:00 2001 From: ryojiro Date: Thu, 11 May 2023 09:13:11 +0900 Subject: [PATCH 1/5] example: Name flutter_datetime_picker as datetime_picker. --- example/lib/main.dart | 55 +++++++++++++++++++++++-------------------- 1 file changed, 29 insertions(+), 26 deletions(-) diff --git a/example/lib/main.dart b/example/lib/main.dart index 1ab0e793..e05a97a9 100644 --- a/example/lib/main.dart +++ b/example/lib/main.dart @@ -1,14 +1,15 @@ import 'package:flutter/material.dart'; -import 'package:flutter_datetime_picker/flutter_datetime_picker.dart'; +import 'package:flutter_datetime_picker/flutter_datetime_picker.dart' + as datetime_picker; void main() => runApp(new MyApp()); -class CustomPicker extends CommonPickerModel { +class CustomPicker extends datetime_picker.CommonPickerModel { String digits(int value, int length) { return '$value'.padLeft(length, "0"); } - CustomPicker({DateTime? currentTime, LocaleType? locale}) + CustomPicker({DateTime? currentTime, datetime_picker.LocaleType? locale}) : super(locale: locale) { this.currentTime = currentTime ?? DateTime.now(); this.setLeftIndex(this.currentTime.hour); @@ -104,11 +105,11 @@ class HomePage extends StatelessWidget { children: [ TextButton( onPressed: () { - DatePicker.showDatePicker(context, + datetime_picker.DatePicker.showDatePicker(context, showTitleActions: true, minTime: DateTime(2018, 3, 5), maxTime: DateTime(2019, 6, 7), - theme: DatePickerTheme( + theme: datetime_picker.DatePickerTheme( headerColor: Colors.orange, backgroundColor: Colors.blue, itemStyle: TextStyle( @@ -122,7 +123,9 @@ class HomePage extends StatelessWidget { date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { print('confirm $date'); - }, currentTime: DateTime.now(), locale: LocaleType.en); + }, + currentTime: DateTime.now(), + locale: datetime_picker.LocaleType.en); }, child: Text( 'show date picker(custom theme &date time range)', @@ -130,8 +133,8 @@ class HomePage extends StatelessWidget { )), TextButton( onPressed: () { - DatePicker.showTimePicker(context, showTitleActions: true, - onChanged: (date) { + datetime_picker.DatePicker.showTimePicker(context, + showTitleActions: true, onChanged: (date) { print('change $date in time zone ' + date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { @@ -144,8 +147,8 @@ class HomePage extends StatelessWidget { )), TextButton( onPressed: () { - DatePicker.showTime12hPicker(context, showTitleActions: true, - onChanged: (date) { + datetime_picker.DatePicker.showTime12hPicker(context, + showTitleActions: true, onChanged: (date) { print('change $date in time zone ' + date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { @@ -158,7 +161,7 @@ class HomePage extends StatelessWidget { )), TextButton( onPressed: () { - DatePicker.showDateTimePicker(context, + datetime_picker.DatePicker.showDateTimePicker(context, showTitleActions: true, minTime: DateTime(2020, 5, 5, 20, 50), maxTime: DateTime(2020, 6, 7, 05, 09), onChanged: (date) { @@ -166,7 +169,7 @@ class HomePage extends StatelessWidget { date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { print('confirm $date'); - }, locale: LocaleType.zh); + }, locale: datetime_picker.LocaleType.zh); }, child: Text( 'show date time picker (Chinese)', @@ -174,8 +177,8 @@ class HomePage extends StatelessWidget { )), TextButton( onPressed: () { - DatePicker.showDateTimePicker(context, showTitleActions: true, - onChanged: (date) { + datetime_picker.DatePicker.showDateTimePicker(context, + showTitleActions: true, onChanged: (date) { print('change $date in time zone ' + date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { @@ -188,15 +191,15 @@ class HomePage extends StatelessWidget { )), TextButton( onPressed: () { - DatePicker.showDateTimePicker(context, showTitleActions: true, - onChanged: (date) { + datetime_picker.DatePicker.showDateTimePicker(context, + showTitleActions: true, onChanged: (date) { print('change $date in time zone ' + date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { print('confirm $date'); }, currentTime: DateTime(2008, 12, 31, 23, 12, 34), - locale: LocaleType.nl); + locale: datetime_picker.LocaleType.nl); }, child: Text( 'show date time picker (Dutch)', @@ -204,15 +207,15 @@ class HomePage extends StatelessWidget { )), TextButton( onPressed: () { - DatePicker.showDateTimePicker(context, showTitleActions: true, - onChanged: (date) { + datetime_picker.DatePicker.showDateTimePicker(context, + showTitleActions: true, onChanged: (date) { print('change $date in time zone ' + date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { print('confirm $date'); }, currentTime: DateTime(2008, 12, 31, 23, 12, 34), - locale: LocaleType.ru); + locale: datetime_picker.LocaleType.ru); }, child: Text( 'show date time picker (Russian)', @@ -220,15 +223,15 @@ class HomePage extends StatelessWidget { )), TextButton( onPressed: () { - DatePicker.showDateTimePicker(context, showTitleActions: true, - onChanged: (date) { + datetime_picker.DatePicker.showDateTimePicker(context, + showTitleActions: true, onChanged: (date) { print('change $date in time zone ' + date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { print('confirm $date'); }, currentTime: DateTime.utc(2019, 12, 31, 23, 12, 34), - locale: LocaleType.de); + locale: datetime_picker.LocaleType.de); }, child: Text( 'show date time picker in UTC (German)', @@ -236,15 +239,15 @@ class HomePage extends StatelessWidget { )), TextButton( onPressed: () { - DatePicker.showPicker(context, showTitleActions: true, - onChanged: (date) { + datetime_picker.DatePicker.showPicker(context, + showTitleActions: true, onChanged: (date) { print('change $date in time zone ' + date.timeZoneOffset.inHours.toString()); }, onConfirm: (date) { print('confirm $date'); }, pickerModel: CustomPicker(currentTime: DateTime.now()), - locale: LocaleType.en); + locale: datetime_picker.LocaleType.en); }, child: Text( 'show custom time picker,\nyou can custom picker model like this', From b178ff6e4c5345fe9090772cf1cf4fdd42afa15e Mon Sep 17 00:00:00 2001 From: ryojiro Date: Thu, 11 May 2023 09:14:14 +0900 Subject: [PATCH 2/5] flutter_datetime_picker: Name datetime_picker_theme as datetime_picker_theme. --- lib/flutter_datetime_picker.dart | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/lib/flutter_datetime_picker.dart b/lib/flutter_datetime_picker.dart index dba6b566..c6fd9aec 100644 --- a/lib/flutter_datetime_picker.dart +++ b/lib/flutter_datetime_picker.dart @@ -4,7 +4,8 @@ import 'dart:async'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/painting.dart'; -import 'package:flutter_datetime_picker/src/datetime_picker_theme.dart'; +import 'package:flutter_datetime_picker/src/datetime_picker_theme.dart' + as datetime_picker_theme; import 'package:flutter_datetime_picker/src/date_model.dart'; import 'package:flutter_datetime_picker/src/i18n_model.dart'; @@ -30,7 +31,7 @@ class DatePicker { DateCancelledCallback? onCancel, locale: LocaleType.en, DateTime? currentTime, - DatePickerTheme? theme, + datetime_picker_theme.DatePickerTheme? theme, }) async { return await Navigator.push( context, @@ -65,7 +66,7 @@ class DatePicker { DateCancelledCallback? onCancel, locale: LocaleType.en, DateTime? currentTime, - DatePickerTheme? theme, + datetime_picker_theme.DatePickerTheme? theme, }) async { return await Navigator.push( context, @@ -98,7 +99,7 @@ class DatePicker { DateCancelledCallback? onCancel, locale: LocaleType.en, DateTime? currentTime, - DatePickerTheme? theme, + datetime_picker_theme.DatePickerTheme? theme, }) async { return await Navigator.push( context, @@ -132,7 +133,7 @@ class DatePicker { DateCancelledCallback? onCancel, locale: LocaleType.en, DateTime? currentTime, - DatePickerTheme? theme, + datetime_picker_theme.DatePickerTheme? theme, }) async { return await Navigator.push( context, @@ -166,7 +167,7 @@ class DatePicker { DateCancelledCallback? onCancel, locale: LocaleType.en, BasePickerModel? pickerModel, - DatePickerTheme? theme, + datetime_picker_theme.DatePickerTheme? theme, }) async { return await Navigator.push( context, @@ -191,13 +192,13 @@ class _DatePickerRoute extends PopupRoute { this.onChanged, this.onConfirm, this.onCancel, - DatePickerTheme? theme, + datetime_picker_theme.DatePickerTheme? theme, this.barrierLabel, this.locale, RouteSettings? settings, BasePickerModel? pickerModel, }) : this.pickerModel = pickerModel ?? DatePickerModel(), - this.theme = theme ?? DatePickerTheme(), + this.theme = theme ?? datetime_picker_theme.DatePickerTheme(), super(settings: settings); final bool? showTitleActions; @@ -205,7 +206,7 @@ class _DatePickerRoute extends PopupRoute { final DateChangedCallback? onConfirm; final DateCancelledCallback? onCancel; final LocaleType? locale; - final DatePickerTheme theme; + final datetime_picker_theme.DatePickerTheme theme; final BasePickerModel pickerModel; @override @@ -293,7 +294,7 @@ class _DatePickerState extends State<_DatePickerComponent> { @override Widget build(BuildContext context) { - DatePickerTheme theme = widget.route.theme; + datetime_picker_theme.DatePickerTheme theme = widget.route.theme; return GestureDetector( child: AnimatedBuilder( animation: widget.route.animation!, @@ -326,7 +327,7 @@ class _DatePickerState extends State<_DatePickerComponent> { } } - Widget _renderPickerView(DatePickerTheme theme) { + Widget _renderPickerView(datetime_picker_theme.DatePickerTheme theme) { Widget itemView = _renderItemView(theme); if (widget.route.showTitleActions == true) { return Column( @@ -341,7 +342,7 @@ class _DatePickerState extends State<_DatePickerComponent> { Widget _renderColumnView( ValueKey key, - DatePickerTheme theme, + datetime_picker_theme.DatePickerTheme theme, StringAtIndexCallBack stringAtIndexCB, ScrollController scrollController, int layoutProportion, @@ -396,7 +397,7 @@ class _DatePickerState extends State<_DatePickerComponent> { ); } - Widget _renderItemView(DatePickerTheme theme) { + Widget _renderItemView(datetime_picker_theme.DatePickerTheme theme) { return Container( color: theme.backgroundColor, child: Directionality( @@ -471,7 +472,7 @@ class _DatePickerState extends State<_DatePickerComponent> { } // Title View - Widget _renderTitleActionsView(DatePickerTheme theme) { + Widget _renderTitleActionsView(datetime_picker_theme.DatePickerTheme theme) { final done = _localeDone(); final cancel = _localeCancel(); @@ -543,7 +544,7 @@ class _BottomPickerLayout extends SingleChildLayoutDelegate { final double progress; final int? itemCount; final bool? showTitleActions; - final DatePickerTheme theme; + final datetime_picker_theme.DatePickerTheme theme; final double bottomPadding; @override From a81f78a29c67545476766605519a6a781607cd15 Mon Sep 17 00:00:00 2001 From: ryojiro Date: Thu, 11 May 2023 09:17:32 +0900 Subject: [PATCH 3/5] Fix deprecated_colon_for_default_value. --- lib/flutter_datetime_picker.dart | 22 +++++++++++----------- lib/src/date_model.dart | 8 +++++--- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/lib/flutter_datetime_picker.dart b/lib/flutter_datetime_picker.dart index c6fd9aec..e818e67d 100644 --- a/lib/flutter_datetime_picker.dart +++ b/lib/flutter_datetime_picker.dart @@ -23,13 +23,13 @@ class DatePicker { /// static Future showDatePicker( BuildContext context, { - bool showTitleActions: true, + bool showTitleActions = true, DateTime? minTime, DateTime? maxTime, DateChangedCallback? onChanged, DateChangedCallback? onConfirm, DateCancelledCallback? onCancel, - locale: LocaleType.en, + locale = LocaleType.en, DateTime? currentTime, datetime_picker_theme.DatePickerTheme? theme, }) async { @@ -59,12 +59,12 @@ class DatePicker { /// static Future showTimePicker( BuildContext context, { - bool showTitleActions: true, - bool showSecondsColumn: true, + bool showTitleActions = true, + bool showSecondsColumn = true, DateChangedCallback? onChanged, DateChangedCallback? onConfirm, DateCancelledCallback? onCancel, - locale: LocaleType.en, + locale = LocaleType.en, DateTime? currentTime, datetime_picker_theme.DatePickerTheme? theme, }) async { @@ -93,11 +93,11 @@ class DatePicker { /// static Future showTime12hPicker( BuildContext context, { - bool showTitleActions: true, + bool showTitleActions = true, DateChangedCallback? onChanged, DateChangedCallback? onConfirm, DateCancelledCallback? onCancel, - locale: LocaleType.en, + locale = LocaleType.en, DateTime? currentTime, datetime_picker_theme.DatePickerTheme? theme, }) async { @@ -125,13 +125,13 @@ class DatePicker { /// static Future showDateTimePicker( BuildContext context, { - bool showTitleActions: true, + bool showTitleActions = true, DateTime? minTime, DateTime? maxTime, DateChangedCallback? onChanged, DateChangedCallback? onConfirm, DateCancelledCallback? onCancel, - locale: LocaleType.en, + locale = LocaleType.en, DateTime? currentTime, datetime_picker_theme.DatePickerTheme? theme, }) async { @@ -161,11 +161,11 @@ class DatePicker { /// static Future showPicker( BuildContext context, { - bool showTitleActions: true, + bool showTitleActions = true, DateChangedCallback? onChanged, DateChangedCallback? onConfirm, DateCancelledCallback? onCancel, - locale: LocaleType.en, + locale = LocaleType.en, BasePickerModel? pickerModel, datetime_picker_theme.DatePickerTheme? theme, }) async { diff --git a/lib/src/date_model.dart b/lib/src/date_model.dart index 0e899870..a0b9f905 100644 --- a/lib/src/date_model.dart +++ b/lib/src/date_model.dart @@ -376,9 +376,11 @@ class DatePickerModel extends CommonPickerModel { class TimePickerModel extends CommonPickerModel { bool showSecondsColumn; - TimePickerModel( - {DateTime? currentTime, LocaleType? locale, this.showSecondsColumn: true}) - : super(locale: locale) { + TimePickerModel({ + DateTime? currentTime, + LocaleType? locale, + this.showSecondsColumn = true, + }) : super(locale: locale) { this.currentTime = currentTime ?? DateTime.now(); _currentLeftIndex = this.currentTime.hour; From 482c92d3342316bae3d9af486ce419532ac47cc6 Mon Sep 17 00:00:00 2001 From: ryojiro Date: Thu, 11 May 2023 09:17:55 +0900 Subject: [PATCH 4/5] Fix unused_element. --- lib/flutter_datetime_picker.dart | 2 -- 1 file changed, 2 deletions(-) diff --git a/lib/flutter_datetime_picker.dart b/lib/flutter_datetime_picker.dart index e818e67d..191f2e37 100644 --- a/lib/flutter_datetime_picker.dart +++ b/lib/flutter_datetime_picker.dart @@ -536,13 +536,11 @@ class _BottomPickerLayout extends SingleChildLayoutDelegate { _BottomPickerLayout( this.progress, this.theme, { - this.itemCount, this.showTitleActions, this.bottomPadding = 0, }); final double progress; - final int? itemCount; final bool? showTitleActions; final datetime_picker_theme.DatePickerTheme theme; final double bottomPadding; From 32ea47240c10469ad31db0084f5d9b7a12d16e01 Mon Sep 17 00:00:00 2001 From: ryojiro Date: Thu, 11 May 2023 09:25:33 +0900 Subject: [PATCH 5/5] Fix unnecessary_import. --- lib/flutter_datetime_picker.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/flutter_datetime_picker.dart b/lib/flutter_datetime_picker.dart index 191f2e37..5c24b4d3 100644 --- a/lib/flutter_datetime_picker.dart +++ b/lib/flutter_datetime_picker.dart @@ -3,7 +3,6 @@ library flutter_datetime_picker; import 'dart:async'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/painting.dart'; import 'package:flutter_datetime_picker/src/datetime_picker_theme.dart' as datetime_picker_theme; import 'package:flutter_datetime_picker/src/date_model.dart';