TitleValueView function
Implementation
Widget TitleValueView(
BuildContext context, {
required List<Widget> left,
List<Widget>? right,
double itemSpace = 8,
double minHeight = 48,
double padX = 16,
VoidCallback? onTap,
VoidCallback? onDoubleTap,
}) {
late Widget leftWidget;
if (left.isEmpty) {
leftWidget = "".text();
} else if (left.length == 1) {
leftWidget = left.first;
} else {
if (itemSpace > 0) {
leftWidget = RowMin(left.gaped(() => space(width: itemSpace)));
} else {
leftWidget = RowMin(left);
}
}
Widget w = RowMax([
space(width: padX),
DefaultTextStyle(style: context.themeData.textTheme.titleMedium!, child: leftWidget),
const Spacer(),
if (right != null) ...right.gaped(() => space(width: itemSpace)),
space(width: padX),
], crossAxisAlignment: CrossAxisAlignment.center);
if (onTap == null && onDoubleTap == null) return w.constrainedBox(minHeight: minHeight);
return w.inkWell(onTap: onTap, onDoubleTap: onDoubleTap).constrainedBox(minHeight: minHeight);
}