copyWith method
Creates a copy of this GutterTheme with the given fields replaced.
Provides immutable updates for theme extensions, commonly used in ArcaneTheme overrides or local customizations.
Inputs: Optional gutterCalc function to redefine width calculation, and enabled bool to toggle default state.
Output: A new GutterTheme instance with merged values, preserving originals where unspecified.
No state interactions; purely functional for building variant themes without mutation.
Implementation
GutterTheme copyWith(
{double Function(double screenWidth)? gutterCalc, bool? enabled}) =>
GutterTheme(
gutterCalc: gutterCalc ?? this.gutterCalc,
enabled: enabled ?? this.enabled);