import 'package:flutter/cupertino.dart'; import 'package:mobile_nebula/components/SpecialButton.dart'; import 'package:mobile_nebula/services/utils.dart'; class ConfigCheckboxItem extends StatelessWidget { const ConfigCheckboxItem( {Key? key, this.label, this.content, this.labelWidth = 100, this.onChanged, this.checked = false}) : super(key: key); final Widget? label; final Widget? content; final double labelWidth; final bool checked; final Function? onChanged; @override Widget build(BuildContext context) { Widget item = Container( padding: EdgeInsets.only(left: 15), constraints: BoxConstraints(minHeight: Utils.minInteractiveSize, minWidth: double.infinity), child: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ label != null ? Container(width: labelWidth, child: label) : Container(), Expanded(child: Container(child: content, padding: EdgeInsets.only(right: 10))), checked ? Icon(CupertinoIcons.check_mark, color: CupertinoColors.systemBlue.resolveFrom(context), size: 34) : Container() ], )); if (onChanged != null) { return SpecialButton( color: Utils.configItemBackground(context), child: item, onPressed: () { if (onChanged != null) { onChanged!(); } }, ); } else { return item; } } }