renderActionsBlock method
Implementation
Widget renderActionsBlock(BuildContext context, block) {
List elements = block["elements"];
List<Widget> actionWidgets = [];
int i = 0;
for (Map element in elements) {
switch (element["type"]) {
case "button":
var mL = i == 0 ? 0.0 : 8.0;
var mR = i == elements.length - 1 ? 0.0 : 8.0;
actionWidgets.add(widget.buttonParser.parse(element,
context: context,
options: Options(
margin: EdgeInsets.fromLTRB(mL, 8, mR, 8),
disabled: widget.disabled)));
break;
case "spacer":
//actionWidgets
// .add(widget.spacerParser.parse(element, context: context));
break;
case "file":
actionWidgets.add(renderFileBlock(context, element));
break;
case "input":
actionWidgets.add(renderInputBlock(context, element));
break;
case "checkboxes":
actionWidgets.add(renderCheckboxesBlock(context, element));
break;
case "radio_buttons":
actionWidgets.add(renderRadioButtons(context, element));
break;
case "datepicker":
actionWidgets.add(renderDateTimePicker(context, element));
break;
case "section":
actionWidgets.add(renderSectionBlock(context, element));
break;
case "dropdown-list":
actionWidgets.add(renderDropdownListBlock(context, element));
break;
default:
break;
}
i++;
}
return Container(
width: MediaQuery.of(context).size.width,
child: Wrap(
alignment: WrapAlignment.end,
direction: Axis.horizontal,
crossAxisAlignment: WrapCrossAlignment.center,
children: actionWidgets,
),
);
}