buildSlider method
Build a labeled slider with value display
Implementation
Widget buildSlider(
String label,
double value,
double min,
double max,
ValueChanged<double> onChanged, {
String? displayValue,
int decimals = 0,
}) {
final display = displayValue ??
(decimals > 0 ? value.toStringAsFixed(decimals) : '${value.toInt()}px');
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(label, style: const TextStyle(fontSize: 13)),
Text(
display,
style: const TextStyle(
fontSize: 13,
fontWeight: FontWeight.bold,
color: Colors.blue,
),
),
],
),
Slider(
value: value.clamp(min, max),
min: min,
max: max,
onChanged: (v) {
onChanged(v);
onUpdate();
},
activeColor: Colors.blue,
),
const SizedBox(height: 8),
],
);
}