fulfillWithTheme method

  1. @override
DatePickerRangeStyles fulfillWithTheme(
  1. ThemeData theme
)
override

Return new DatePickerRangeStyles object where fields with null values set with defaults from given theme.

Implementation

@override
DatePickerRangeStyles fulfillWithTheme(ThemeData theme) {
  Color accentColor = theme.colorScheme.secondary;

  DatePickerStyles commonStyles = super.fulfillWithTheme(theme);

  final BoxDecoration _selectedPeriodStartDecoration =
      selectedPeriodStartDecoration ??
          BoxDecoration(
            color: accentColor,
            borderRadius: const BorderRadiusDirectional.only(
                topStart: Radius.circular(10.0),
                bottomStart: Radius.circular(10.0)),
          );

  final BoxDecoration _selectedPeriodLastDecoration =
      selectedPeriodLastDecoration ??
          BoxDecoration(
            color: accentColor,
            borderRadius: const BorderRadiusDirectional.only(
                topEnd: Radius.circular(10.0),
                bottomEnd: Radius.circular(10.0)),
          );

  final BoxDecoration _selectedPeriodMiddleDecoration =
      selectedPeriodMiddleDecoration ??
          BoxDecoration(
            color: accentColor,
            shape: BoxShape.rectangle,
          );

  final TextStyle? _selectedPeriodStartTextStyle =
      selectedPeriodStartTextStyle ?? commonStyles.selectedDateStyle;

  final TextStyle? _selectedPeriodMiddleTextStyle =
      selectedPeriodMiddleTextStyle ?? commonStyles.selectedDateStyle;

  final TextStyle? _selectedPeriodEndTextStyle =
      selectedPeriodEndTextStyle ?? commonStyles.selectedDateStyle;

  return DatePickerRangeStyles(
    disabledDateStyle: commonStyles.disabledDateStyle,
    currentDateStyle: commonStyles.currentDateStyle,
    displayedPeriodTitle: commonStyles.displayedPeriodTitle,
    selectedDateStyle: commonStyles.selectedDateStyle,
    selectedSingleDateDecoration: commonStyles.selectedSingleDateDecoration,
    defaultDateTextStyle: commonStyles.defaultDateTextStyle,
    dayHeaderStyle: commonStyles.dayHeaderStyle,
    dayHeaderStyleBuilder: commonStyles.dayHeaderStyleBuilder,
    dayHeaderTitleBuilder: commonStyles.dayHeaderTitleBuilder,
    firstDayOfWeekIndex: firstDayOfeWeekIndex,
    selectedPeriodStartDecoration: _selectedPeriodStartDecoration,
    selectedPeriodMiddleDecoration: _selectedPeriodMiddleDecoration,
    selectedPeriodLastDecoration: _selectedPeriodLastDecoration,
    selectedPeriodStartTextStyle: _selectedPeriodStartTextStyle,
    selectedPeriodMiddleTextStyle: _selectedPeriodMiddleTextStyle,
    selectedPeriodEndTextStyle: _selectedPeriodEndTextStyle,
  );
}