2024-12-18 21:12:24 +00:00
|
|
|
import 'dart:io';
|
|
|
|
|
2020-07-27 20:43:58 +00:00
|
|
|
import 'package:flutter/cupertino.dart';
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
import 'package:mobile_nebula/services/utils.dart';
|
|
|
|
|
|
|
|
class ConfigItem extends StatelessWidget {
|
|
|
|
const ConfigItem(
|
2022-09-21 20:27:35 +00:00
|
|
|
{Key? key,
|
|
|
|
this.label,
|
|
|
|
required this.content,
|
|
|
|
this.labelWidth = 100,
|
|
|
|
this.crossAxisAlignment = CrossAxisAlignment.center})
|
2020-07-27 20:43:58 +00:00
|
|
|
: super(key: key);
|
|
|
|
|
2022-09-21 20:27:35 +00:00
|
|
|
final Widget? label;
|
2020-07-27 20:43:58 +00:00
|
|
|
final Widget content;
|
|
|
|
final double labelWidth;
|
|
|
|
final CrossAxisAlignment crossAxisAlignment;
|
|
|
|
|
|
|
|
@override
|
|
|
|
Widget build(BuildContext context) {
|
|
|
|
return Container(
|
|
|
|
color: Utils.configItemBackground(context),
|
|
|
|
padding: EdgeInsets.only(top: 2, bottom: 2, left: 15, right: 10),
|
|
|
|
constraints: BoxConstraints(minHeight: Utils.minInteractiveSize),
|
|
|
|
child: Row(
|
|
|
|
crossAxisAlignment: crossAxisAlignment,
|
|
|
|
children: <Widget>[
|
2024-12-18 21:12:24 +00:00
|
|
|
Container(
|
|
|
|
width: labelWidth,
|
|
|
|
child: Platform.isAndroid
|
|
|
|
? label
|
|
|
|
: DefaultTextStyle(
|
|
|
|
style: CupertinoTheme.of(context).textTheme.textStyle, child: Container(child: label))),
|
2020-07-27 20:43:58 +00:00
|
|
|
Expanded(child: content),
|
|
|
|
],
|
|
|
|
));
|
|
|
|
}
|
|
|
|
}
|