TTableHeader<T, K>.toggle constructor
TTableHeader<T, K>.toggle (})
Creates a header for displaying and editing boolean values using TSwitch.
Implementation
TTableHeader.toggle(
this.text,
bool? Function(T) get,
void Function(T, bool)? set, {
this.flex,
this.minWidth,
this.maxWidth,
this.alignment = Alignment.center,
bool disabled = false,
bool Function(T data)? isDisabled,
}) : map = get,
builder = ((ctx, item, __) {
final isDense = TTableScope.maybeOf(ctx)?.dense ?? false;
final val = get(item.data) ?? false;
final isOff = disabled || (isDisabled?.call(item.data) ?? false);
return TSwitch(
value: val,
disabled: isOff,
size: isDense ? TInputSize.xs : TInputSize.sm,
onValueChanged: isOff || set == null ? null : (newVal) => set(item.data, newVal ?? false),
);
});