showOmniDateTimeRangePicker function

Future<List<DateTime>?> showOmniDateTimeRangePicker({
  1. required BuildContext context,
  2. DateTime? startInitialDate,
  3. DateTime? startFirstDate,
  4. DateTime? startLastDate,
  5. DateTime? endInitialDate,
  6. DateTime? endFirstDate,
  7. DateTime? endLastDate,
  8. bool? is24HourMode,
  9. bool? isShowSeconds,
  10. int? minutesInterval,
  11. int? secondsInterval,
  12. bool? isForce2Digits,
  13. bool? isForceEndDateAfterStartDate,
  14. BorderRadiusGeometry? borderRadius,
  15. BoxConstraints? constraints,
  16. Widget transitionBuilder(
    1. BuildContext,
    2. Animation<double>,
    3. Animation<double>,
    4. Widget,
    )?,
  17. Duration? transitionDuration,
  18. bool? barrierDismissible,
  19. OmniDateTimePickerType type = OmniDateTimePickerType.dateAndTime,
  20. bool selectableDayPredicate(
    1. DateTime
    )?,
  21. ThemeData? theme,
  22. DefaultView defaultView = DefaultView.start,
})

Show a dialog of the OmniDateTimePicker

Returns a List

Implementation

Future<List<DateTime>?> showOmniDateTimeRangePicker({
  required BuildContext context,
  DateTime? startInitialDate,
  DateTime? startFirstDate,
  DateTime? startLastDate,
  DateTime? endInitialDate,
  DateTime? endFirstDate,
  DateTime? endLastDate,
  bool? is24HourMode,
  bool? isShowSeconds,
  int? minutesInterval,
  int? secondsInterval,
  bool? isForce2Digits,
  bool? isForceEndDateAfterStartDate,
  BorderRadiusGeometry? borderRadius,
  BoxConstraints? constraints,
  Widget Function(BuildContext, Animation<double>, Animation<double>, Widget)?
      transitionBuilder,
  Duration? transitionDuration,
  bool? barrierDismissible,
  OmniDateTimePickerType type = OmniDateTimePickerType.dateAndTime,
  bool Function(DateTime)? selectableDayPredicate,
  ThemeData? theme,
  DefaultView defaultView = DefaultView.start,
}) {
  return showGeneralDialog(
    context: context,
    transitionBuilder: transitionBuilder ??
        (context, anim1, anim2, child) {
          return FadeTransition(
            opacity: anim1.drive(
              Tween(
                begin: 0,
                end: 1,
              ),
            ),
            child: child,
          );
        },
    transitionDuration: transitionDuration ?? const Duration(milliseconds: 200),
    barrierDismissible: barrierDismissible ?? true,
    barrierLabel: 'OmniDateTimeRangePicker',
    pageBuilder: (BuildContext context, anim1, anim2) {
      return Theme(
        data: theme ?? Theme.of(context),
        child: OmniDateTimeRangePicker(
          type: type,
          startInitialDate: startInitialDate,
          startFirstDate: startFirstDate,
          startLastDate: startLastDate,
          endInitialDate: endInitialDate,
          endFirstDate: endFirstDate,
          endLastDate: endLastDate,
          is24HourMode: is24HourMode,
          isShowSeconds: isShowSeconds,
          minutesInterval: minutesInterval,
          secondsInterval: secondsInterval,
          isForce2Digits: isForce2Digits,
          isForceEndDateAfterStartDate: isForceEndDateAfterStartDate,
          borderRadius: borderRadius,
          constraints: constraints,
          selectableDayPredicate: selectableDayPredicate,
          defaultView: defaultView,
        ),
      );
    },
  );
}