pickInt method

Future<int?> pickInt({
  1. required int value,
  2. required int minValue,
  3. required int maxValue,
  4. required String label,
  5. required String title,
  6. int? divisions,
})

Implementation

Future<int?> pickInt({required int value, required int minValue, required int maxValue, required String label, required String title, int? divisions}) async {
  return showColumn(
    title: title,
    ok: true,
    cancel: true,
    padding: edges(hor: 16, ver: 16),
    onContent: (uc) {
      value = value.clamp(minValue, maxValue);
      if (!uc.hasResult) {
        uc.setResult(value);
      }
      int v = uc.getResult()!;
      return ColumnMin([
        RowMin([label.titleMedium(), space(width: 8), v.toString().titleMedium()]),
        Slider(
          value: v.toDouble(),
          min: minValue.toDouble(),
          max: maxValue.toDouble(),
          divisions: divisions ?? (maxValue - minValue),
          onChanged: (r) {
            uc.setResult(r.toInt());
            uc.updateState();
          },
          label: v.toString(),
          padding: xy(0, 8),
        ),
        space(height: 8),
      ], crossAxisAlignment: CrossAxisAlignment.center);
    },
  );
}