From 5ec00bc17aadcb8391ba13c224a96a50fd82ef45 Mon Sep 17 00:00:00 2001 From: Abbas Hussein Date: Thu, 19 Oct 2023 22:23:50 +0300 Subject: [PATCH 1/2] Added initialTime parameter to MacosTimePicker --- .gitignore | 1 + CHANGELOG.md | 4 ++++ lib/src/selectors/time_picker.dart | 14 ++++++++++---- pubspec.yaml | 2 +- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index fcfa202c..c8887dcd 100644 --- a/.gitignore +++ b/.gitignore @@ -80,3 +80,4 @@ metrics coverage_report coverage +example/macos/Flutter/GeneratedPluginRegistrant.swift diff --git a/CHANGELOG.md b/CHANGELOG.md index fd70a111..36d3e5b2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## [2.0.3] +### 🔄 Updated 🔄 +* Added `initialTime` parameter to `MacosTimePicker`, allowing to set an initial time for the picker.This provides more customization options for selecting time. + ## [2.0.2] ### 🛠️ Fixed 🛠️ * Fixed images in generated documentation. diff --git a/lib/src/selectors/time_picker.dart b/lib/src/selectors/time_picker.dart index 815b23d5..47b4bb15 100644 --- a/lib/src/selectors/time_picker.dart +++ b/lib/src/selectors/time_picker.dart @@ -20,8 +20,8 @@ enum TimePickerStyle { /// {template onTimeChanged} /// The action to perform when a new time is selected. -/// {endtemplate} -typedef OnTimeChanged = Function(TimeOfDay time); +/// {end-template} +typedef OnTimeChanged = void Function(TimeOfDay time); /// {template macosTimePicker} /// A [MacosTimePicker] lets the user choose a time. @@ -36,15 +36,21 @@ typedef OnTimeChanged = Function(TimeOfDay time); /// /// The [onTimeChanged] callback passes through the user's selected time, and /// must be provided. -/// {endtemplate} +/// {end-template} class MacosTimePicker extends StatefulWidget { /// {@macro macosTimePicker} const MacosTimePicker({ super.key, required this.onTimeChanged, + this.initialTime, this.style = TimePickerStyle.combined, }); + /// Set an initial date for the picker. + /// + /// Defaults to `TimeOfDay.now()`. + final TimeOfDay? initialTime; + /// The [TimePickerStyle] to use. /// /// Defaults to [TimePickerStyle.combined]. @@ -58,7 +64,7 @@ class MacosTimePicker extends StatefulWidget { } class _MacosTimePickerState extends State { - final _initialTime = TimeOfDay.now(); + late final _initialTime = widget.initialTime ?? TimeOfDay.now(); late int _selectedHour; late int _selectedMinute; late DayPeriod _selectedPeriod; diff --git a/pubspec.yaml b/pubspec.yaml index 8d81c2da..983e4bed 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: macos_ui description: Flutter widgets and themes implementing the current macOS design language. -version: 2.0.2 +version: 2.0.3 homepage: "https://macosui.dev" repository: "https://github.com/GroovinChip/macos_ui" From 908bb8b5e0d989ec1758107f7fda5211d4f74901 Mon Sep 17 00:00:00 2001 From: Abbas Hussein Date: Thu, 19 Oct 2023 22:24:07 +0300 Subject: [PATCH 2/2] Added a void return type to OnDateChanged --- lib/src/selectors/date_picker.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/selectors/date_picker.dart b/lib/src/selectors/date_picker.dart index 2b3cd9b0..25515a7d 100644 --- a/lib/src/selectors/date_picker.dart +++ b/lib/src/selectors/date_picker.dart @@ -21,7 +21,7 @@ enum DatePickerStyle { /// {template onDateChanged} /// The action to perform when a new date is selected. /// {endtemplate} -typedef OnDateChanged = Function(DateTime date); +typedef OnDateChanged = void Function(DateTime date); /// {template macosDatePicker} /// A [MacosDatePicker] lets the user choose a date.