add method

SpinnerState add(
  1. Spinner spinner
)

Adds a new Spinner to current MultiSpinner.

Implementation

SpinnerState add(Spinner spinner) {
  final index = _spinners.length;

  _lines.add(StringBuffer());
  spinner.setContext(
    BufferContext(
      buffer: _lines[index],
      setState: _render,
    ),
  );
  _spinners.add(spinner.interact());

  final state = SpinnerState(
    done: () {
      final disposer = _spinners[index].done();
      _dispose(() {
        _disposers.add(disposer);
      });
      return disposer;
    },
  );

  return state;
}