xLayout_Render_HeadView_Preview method

List<Widget> xLayout_Render_HeadView_Preview(
  1. XView xview,
  2. XFDataItem item, {
  3. bool border_Visible = true,
})

Implementation

List<Widget> xLayout_Render_HeadView_Preview(XView xview, XFDataItem item, {bool border_Visible = true}) {
  xLayout_maxRowLen = 0; //resetto
  var grps = xview.cols
      . //
      groupListsBy((element) => element.originY)
      .entries
      .toList();
  var lastY = grps.last.key;
  double avgColsInY = 0;
  grps.map((e) => avgColsInY += e.value.length).toList();
  avgColsInY = avgColsInY / grps.length;
  var r = grps.map(
    (e) {
      //x ogni Y
      //x orgni sottoROW/grp
      double rowLen = 0;
      var child = xLayout_Render_HeadView_Widget_forY(
          e,
          e.value.map((e) {
            TextEditingController textController = TextEditingController(text: item[e.colKey].runtimeType != DateTime ? item[e.colKey].toString() : XUtils.dateToString(item[e.colKey], format: "dd/MM/yyyy", noDateLabel: ""));

            var xwidgt = Container(width: e.width, child: isWeb ? xLayout_CellWidget_Editable(e, item, context, item, parentSetState: setState, onBeforeCMD_Active: false) : xEditDialog_CellBuilder(item, e, context, setState, textController));
            rowLen += 10 + 5 + xwidgt.constraints!.minWidth;
            return xwidgt;
          }).toList(),
          lastY,
          border_Visible: border_Visible,
          avgColsInY > 3);
      if (rowLen > xLayout_maxRowLen) xLayout_maxRowLen = rowLen;
      return child;
    },
  ).toList();

  return r;
}