renderItem method

List<Widget> renderItem()

Implementation

List<Widget> renderItem() {
  final List<Widget> columns = [];

  for (int i = 0; i < widget.options.length; i++) {
    final column = widget.options[i];
    columns.add(Expanded(
        flex: 1,
        child: GestureDetector(
            onVerticalDragDown: (_) {
              onVerticalDragDown(_, i);
            },
            onVerticalDragUpdate: (_) {
              onVerticalDragUpdate(_, i);
            },
            onVerticalDragEnd: (_) {
              onVerticalDragEnd(i);
            },
            child: DecoratedBox(
                decoration: BoxDecoration(
                  color: Colors.transparent,
                ),
                child: Stack(children: [
                  Positioned(
                      top: tops[i] == null ? 0 : tops[i],
                      right: 0,
                      left: 0,
                      child: Padding(
                          padding: EdgeInsets.only(top: borderTop),
                          child: Column(
                              children: column.map((item) {
                            return SizedBox(
                                height: widget.itemHeight,
                                child: DefaultTextStyle(
                                    style: TextStyle(
                                        fontSize: 16, color: Colors.black),
                                    child: Align(
                                        alignment: Alignment.center,
                                        child: Text(item.label))));
                          }).toList()))),
                  Positioned(
                      top: 0,
                      right: 0,
                      left: 0,
                      bottom: borderTop + widget.itemHeight,
                      child: _renderMaskDecoratedBox(
                          Alignment.bottomCenter, Alignment.topCenter)),
                  Positioned(
                      top: borderTop + widget.itemHeight,
                      right: 0,
                      bottom: 0,
                      left: 0,
                      child: _renderMaskDecoratedBox(
                          Alignment.topCenter, Alignment.bottomCenter))
                ])))));
  }

  return columns;
}