copyWith method
CollapsibleTheme
copyWith({
- ValueGetter<
double?> ? padding, - ValueGetter<
IconData?> ? iconExpanded, - ValueGetter<
IconData?> ? iconCollapsed, - ValueGetter<
CrossAxisAlignment?> ? crossAxisAlignment, - ValueGetter<
MainAxisAlignment?> ? mainAxisAlignment, - ValueGetter<
double?> ? iconGap,
Creates a copy of this theme with the given fields replaced.
Uses ValueGetter functions to allow conditional updates where null getters preserve the original value.
Example:
final newTheme = originalTheme.copyWith(
padding: () => 20.0,
iconGap: () => 12.0,
);
Implementation
CollapsibleTheme copyWith({
ValueGetter<double?>? padding,
ValueGetter<IconData?>? iconExpanded,
ValueGetter<IconData?>? iconCollapsed,
ValueGetter<CrossAxisAlignment?>? crossAxisAlignment,
ValueGetter<MainAxisAlignment?>? mainAxisAlignment,
ValueGetter<double?>? iconGap,
}) {
return CollapsibleTheme(
padding: padding == null ? this.padding : padding(),
iconExpanded: iconExpanded == null ? this.iconExpanded : iconExpanded(),
iconCollapsed:
iconCollapsed == null ? this.iconCollapsed : iconCollapsed(),
crossAxisAlignment: crossAxisAlignment == null
? this.crossAxisAlignment
: crossAxisAlignment(),
mainAxisAlignment: mainAxisAlignment == null
? this.mainAxisAlignment
: mainAxisAlignment(),
iconGap: iconGap == null ? this.iconGap : iconGap(),
);
}