iter method
void
iter(
- String cls
)
override
Implementation
@override
void iter(String cls) {
_set.add(cls);
switch (cls) {
case "row":
case "flex":
if (!_set.contains("flex-col")) _box = "Row";
break;
case "col":
case "flex-col":
_box = "Column";
break;
// MainAxisSize
case "inline":
case "inline-block":
_size = "MainAxisSize.min";
break;
case "block":
_size = "MainAxisSize.max";
break;
// MainAxisAlignment
case "justify-center":
_align = "MainAxisAlignment.center";
break;
case "justify-end":
_align = "MainAxisAlignment.end";
break;
case "justify-between":
_align = "MainAxisAlignment.spaceBetween";
break;
case "justify-around":
_align = "MainAxisAlignment.spaceAround";
break;
case "justify-evenly":
_align = "MainAxisAlignment.spaceEvenly";
break;
// CrossAxisAlignment
case "items-start":
_cross = "CrossAxisAlignment.start";
break;
case "items-end":
_cross = "CrossAxisAlignment.end";
break;
case "items-center":
_cross = "CrossAxisAlignment.center";
break;
case "items-stretch":
_cross = "CrossAxisAlignment.stretch";
break;
case "items-baseline":
_cross = "CrossAxisAlignment.baseline";
break;
// stack
case "stack":
_box = "Stack";
break;
// stack fit
case "stack-expand":
_stackFit = "StackFit.expand";
break;
case "stack-loose":
_stackFit = "StackFit.loose";
break;
// stack text direction
case "stack-ltr":
_stackDirection = "TextDirection.ltr";
break;
case "stack-rtl":
_stackDirection = "TextDirection.rtl";
break;
// stack clip
case "stack-soft":
_stackClip = "Clip.antiAlias";
break;
case "stack-hard":
_stackClip = "Clip.hardEdge";
break;
case "stack-soft-save":
_stackClip = "Clip.antiAliasWithSaveLayer";
break;
// stack align
case "stack-top-start":
_stackAlign = "AlignmentDirectional.topStart";
break;
case "stack-top-center":
_stackAlign = "AlignmentDirectional.topCenter";
break;
case "stack-top-end":
_stackAlign = "AlignmentDirectional.topEnd";
break;
case "stack-center-start":
_stackAlign = "AlignmentDirectional.centerStart";
break;
case "stack-center":
_stackAlign = "AlignmentDirectional.center";
break;
case "stack-center-end":
_stackAlign = "AlignmentDirectional.centerEnd";
break;
case "stack-bottom-start":
_stackAlign = "AlignmentDirectional.bottomStart";
break;
case "stack-bottom-center":
_stackAlign = "AlignmentDirectional.bottomCenter";
break;
case "stack-bottom-end":
_stackAlign = "AlignmentDirectional.bottomEnd";
break;
default:
if (spacePattern.hasMatch(cls)) {
final match = spacePattern.firstMatch(cls)!;
final axis = match.group(1);
final value = match.group(2);
if (value == null) return;
if (axis == "-x") {
_gapX = parseValue(value);
} else if (axis == "-y") {
_gapY = parseValue(value);
} else {
_gapX = parseValue(value);
_gapY = _gapX;
}
} else if (gapPattern.hasMatch(cls)) {
final match = gapPattern.firstMatch(cls)!;
final axis = match.group(1);
final value = match.group(2);
if (value == null) return;
if (axis == "-x") {
_gapX = parseValue(value);
} else if (axis == "-y") {
_gapY = parseValue(value);
} else {
_gapX = parseValue(value);
_gapY = _gapX;
}
}
break;
}
}