M3EThemeData constructor

M3EThemeData({
  1. M3EColorScheme? colorScheme,
  2. M3ETypeScale? typeScale,
  3. IconThemeData iconTheme = const IconThemeData(size: 24),
  4. M3ESpacing spacing = const M3ESpacing.regular(),
  5. double visualDensity = 0,
  6. TargetPlatform? platform,
  7. bool useMaterial3 = true,
  8. Color? splashColor,
  9. Color? highlightColor,
  10. M3EAppBarTheme appBarTheme = M3EAppBarTheme.defaults,
  11. M3EBadgeTheme badgeTheme = M3EBadgeTheme.defaults,
  12. M3EBottomSheetTheme bottomSheetTheme = M3EBottomSheetTheme.defaults,
  13. M3EButtonTheme buttonTheme = M3EButtonTheme.defaults,
  14. M3ECardTheme cardTheme = M3ECardTheme.defaults,
  15. M3ECarouselTheme carouselTheme = M3ECarouselTheme.defaults,
  16. M3ECheckboxTheme checkboxTheme = M3ECheckboxTheme.defaults,
  17. M3EChipTheme chipTheme = M3EChipTheme.defaults,
  18. M3EDatePickerTheme datePickerTheme = M3EDatePickerTheme.defaults,
  19. M3EDialogTheme dialogTheme = M3EDialogTheme.defaults,
  20. M3EDividerTheme dividerTheme = M3EDividerTheme.defaults,
  21. M3EDropdownMenuTheme dropdownMenuTheme = M3EDropdownMenuTheme.defaults,
  22. M3EFabTheme fabTheme = M3EFabTheme.defaults,
  23. M3EFabMenuTheme fabMenuTheme = M3EFabMenuTheme.defaults,
  24. M3EIconButtonTheme iconButtonTheme = M3EIconButtonTheme.defaults,
  25. M3EListTheme listTheme = M3EListTheme.defaults,
  26. M3ELoadingIndicatorTheme loadingIndicatorTheme = M3ELoadingIndicatorTheme.defaults,
  27. M3EMenuTheme menuTheme = M3EMenuTheme.defaults,
  28. M3ENavigationBarTheme navigationBarTheme = M3ENavigationBarTheme.defaults,
  29. M3ENavigationDrawerTheme navigationDrawerTheme = M3ENavigationDrawerTheme.defaults,
  30. M3ENavigationRailTheme navigationRailTheme = M3ENavigationRailTheme.defaults,
  31. M3EProgressIndicatorTheme progressIndicatorTheme = M3EProgressIndicatorTheme.defaults,
  32. M3ERadioTheme radioTheme = M3ERadioTheme.defaults,
  33. M3ERefreshIndicatorTheme refreshIndicatorTheme = M3ERefreshIndicatorTheme.defaults,
  34. M3ESearchBarTheme searchBarTheme = M3ESearchBarTheme.defaults,
  35. M3ESearchViewTheme searchViewTheme = M3ESearchViewTheme.defaults,
  36. M3ESegmentedButtonTheme segmentedButtonTheme = M3ESegmentedButtonTheme.defaults,
  37. M3ESideSheetTheme sideSheetTheme = M3ESideSheetTheme.defaults,
  38. M3ESliderTheme sliderTheme = M3ESliderTheme.defaults,
  39. M3ESnackbarTheme snackBarTheme = M3ESnackbarTheme.defaults,
  40. M3ESplitButtonTheme splitButtonTheme = M3ESplitButtonTheme.defaults,
  41. M3ESwitchTheme switchTheme = M3ESwitchTheme.defaults,
  42. M3ETabTheme tabTheme = M3ETabTheme.defaults,
  43. M3ETextFieldTheme textFieldTheme = M3ETextFieldTheme.defaults,
  44. M3ETimePickerTheme timePickerTheme = M3ETimePickerTheme.defaults,
  45. M3EToggleButtonTheme toggleButtonTheme = M3EToggleButtonTheme.defaults,
  46. M3EToggleButtonGroupTheme toggleButtonGroupTheme = M3EToggleButtonGroupTheme.defaults,
  47. M3EToolbarTheme toolbarTheme = M3EToolbarTheme.defaults,
  48. M3ETooltipTheme tooltipTheme = M3ETooltipTheme.defaults,
})

Creates an expressive theme from tokens and component themes.

Implementation

M3EThemeData({
  M3EColorScheme? colorScheme,
  M3ETypeScale? typeScale,
  this.iconTheme = const IconThemeData(size: 24),
  this.spacing = const M3ESpacing.regular(),
  this.visualDensity = 0,
  this.platform,
  this.useMaterial3 = true,
  this.splashColor,
  this.highlightColor,
  this.appBarTheme = M3EAppBarTheme.defaults,
  this.badgeTheme = M3EBadgeTheme.defaults,
  this.bottomSheetTheme = M3EBottomSheetTheme.defaults,
  this.buttonTheme = M3EButtonTheme.defaults,
  this.cardTheme = M3ECardTheme.defaults,
  this.carouselTheme = M3ECarouselTheme.defaults,
  this.checkboxTheme = M3ECheckboxTheme.defaults,
  this.chipTheme = M3EChipTheme.defaults,
  this.datePickerTheme = M3EDatePickerTheme.defaults,
  this.dialogTheme = M3EDialogTheme.defaults,
  this.dividerTheme = M3EDividerTheme.defaults,
  this.dropdownMenuTheme = M3EDropdownMenuTheme.defaults,
  this.fabTheme = M3EFabTheme.defaults,
  this.fabMenuTheme = M3EFabMenuTheme.defaults,
  this.iconButtonTheme = M3EIconButtonTheme.defaults,
  this.listTheme = M3EListTheme.defaults,
  this.loadingIndicatorTheme = M3ELoadingIndicatorTheme.defaults,
  this.menuTheme = M3EMenuTheme.defaults,
  this.navigationBarTheme = M3ENavigationBarTheme.defaults,
  this.navigationDrawerTheme = M3ENavigationDrawerTheme.defaults,
  this.navigationRailTheme = M3ENavigationRailTheme.defaults,
  this.progressIndicatorTheme = M3EProgressIndicatorTheme.defaults,
  this.radioTheme = M3ERadioTheme.defaults,
  this.refreshIndicatorTheme = M3ERefreshIndicatorTheme.defaults,
  this.searchBarTheme = M3ESearchBarTheme.defaults,
  this.searchViewTheme = M3ESearchViewTheme.defaults,
  this.segmentedButtonTheme = M3ESegmentedButtonTheme.defaults,
  this.sideSheetTheme = M3ESideSheetTheme.defaults,
  this.sliderTheme = M3ESliderTheme.defaults,
  this.snackBarTheme = M3ESnackbarTheme.defaults,
  this.splitButtonTheme = M3ESplitButtonTheme.defaults,
  this.switchTheme = M3ESwitchTheme.defaults,
  this.tabTheme = M3ETabTheme.defaults,
  this.textFieldTheme = M3ETextFieldTheme.defaults,
  this.timePickerTheme = M3ETimePickerTheme.defaults,
  this.toggleButtonTheme = M3EToggleButtonTheme.defaults,
  this.toggleButtonGroupTheme = M3EToggleButtonGroupTheme.defaults,
  this.toolbarTheme = M3EToolbarTheme.defaults,
  this.tooltipTheme = M3ETooltipTheme.defaults,
}) : colorScheme = colorScheme ?? M3EColorScheme.light(),
     typeScale = typeScale ?? M3ETypeScale.baseline(),
     brightness = (colorScheme ?? M3EColorScheme.light()).brightness;