xEditDialog_Sconto method
Widget
xEditDialog_Sconto(
- XFDataItem item,
- XCol xCol,
- TextEditingController textController,
- void parentSetState(
- void ()
- List<
ScontiBTN> ? liSconti, - bool calc = false,
Dialog per l'editing dello sconto
Implementation
Widget xEditDialog_Sconto(
XFDataItem item,
XCol xCol,
TextEditingController textController,
void Function(void Function())? parentSetState, {
List<ScontiBTN>? liSconti,
bool calc = false,
}) {
return Column(mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.start, children: [
Row(children: [
Expanded(child: Container(decoration: BoxDecoration(border: Border.all(color: Colors.white)), child: Text(textController.text, style: XStyles.xStyTextForSubLabel()))),
XBtnbase(
icon: Icons.arrow_back,
width: 50,
height: 50,
onPressed: () {
parentSetState!(() {
if (textController.text.contains("+")) {
var x = textController.text.split("+");
if (x.length > 1)
textController.text = textController.text.replaceRange(textController.text.length - 3, textController.text.length, "");
else
textController.text = "";
} else {
textController.text = "";
}
});
})
]),
SizedBox(height: 10),
Row(children: [
Expanded(
child: Column(children: [
Row(mainAxisAlignment: MainAxisAlignment.center, children: [
Expanded(
child: Wrap(
alignment: WrapAlignment.end,
spacing: 6,
runSpacing: 6,
children: liSconti != null
? liSconti.where((element) => element.positionY == 0 && element.positionX == null).map((e) => builderXEditDialog_BTNs(item, textController, e.scontoValue, true, parentSetState!)).toList()
: [
builderXEditDialog_BTNs(item, textController, "+25", true, parentSetState!),
builderXEditDialog_BTNs(item, textController, "+40", true, parentSetState),
builderXEditDialog_BTNs(item, textController, "+48", true, parentSetState),
]))
]),
SizedBox(height: 10),
Row(children: [
calc
? Container()
: Expanded(
child: XTextFormField(
height: null,
textAlign: TextAlign.end,
controller: xController_Sconto,
contentPadding: EdgeInsets.all(7),
keyboardType: TextInputType.number,
inputFormatters: [FilteringTextInputFormatter.deny(RegExp("[- /,.\\\\]"))],
))
]),
SizedBox(height: 10),
Row(mainAxisAlignment: MainAxisAlignment.center, children: [
Expanded(
child: Wrap(
alignment: WrapAlignment.end,
spacing: 6,
runSpacing: 6,
children: liSconti != null
? liSconti.where((element) => element.positionY == 1 && element.positionX == null).map((e) => builderXEditDialog_BTNs(item, textController, e.scontoValue, true, parentSetState!)).toList()
: [
builderXEditDialog_BTNs(item, textController, "+20", true, parentSetState!),
builderXEditDialog_BTNs(item, textController, "+15", true, parentSetState),
builderXEditDialog_BTNs(item, textController, "+10", true, parentSetState),
],
))
])
])),
Container(
width: 50,
child: Column(mainAxisSize: MainAxisSize.min, children: [
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: liSconti != null
? liSconti.where((element) => element.positionY == 0 && element.positionX != null && element.positionX! > 1).map((e) => builderXEditDialog_BTNs(item, textController, e.scontoValue, true, parentSetState!)).toList() //
: [builderXEditDialog_BTNs(item, textController, "+50", true, parentSetState!)]),
SizedBox(height: 7),
XBtnbase(
icon: Icons.add,
width: 50,
height: 40,
onPressed: () {
parentSetState!(() {
if (xController_Sconto.text.length < 1) {
} else {
if (textController.text == "")
textController.text += xController_Sconto.text;
else
textController.text += ("+" + xController_Sconto.text);
xController_Sconto.text = "";
}
});
xController_Sconto.clear();
}),
SizedBox(height: 7),
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: liSconti != null
? liSconti.where((element) => element.positionY == 1 && element.positionX != null && element.positionX! > 1).map((e) => builderXEditDialog_BTNs(item, textController, e.scontoValue, true, parentSetState!)).toList() //
: [builderXEditDialog_BTNs(item, textController, "+5", true, parentSetState!)]),
]))
])
]);
}