Files
FlClash/lib/views/config/custom_resources.dart
T

50 lines
1.7 KiB
Dart
Raw Normal View History

import 'package:fl_clash/common/common.dart';
import 'package:fl_clash/icons/icons.dart';
import 'package:fl_clash/views/config/filters.dart';
import 'package:fl_clash/views/config/icon_sets.dart';
import 'package:fl_clash/views/config/providers.dart';
import 'package:fl_clash/views/profiles/custom/custom_proxies.dart';
import 'package:fl_clash/widgets/list.dart';
import 'package:fl_clash/widgets/scaffold.dart';
import 'package:material_ui/material_ui.dart';
class CustomResourcesView extends StatelessWidget {
const CustomResourcesView({super.key});
@override
Widget build(BuildContext context) {
final appLocalizations = context.appLocalizations;
final items = [
ListItem.open(
title: Text(appLocalizations.proxies),
leading: const GlyphIcon(AppGlyphs.proxies),
widget: const CustomProxiesView(),
),
ListItem.open(
title: Text(appLocalizations.ruleProviders),
leading: const GlyphIcon(AppGlyphs.resources),
widget: const ClashProvidersView(),
),
ListItem.open(
title: Text(appLocalizations.filters),
leading: const GlyphIcon(AppGlyphs.filter),
widget: const FiltersView(),
),
ListItem.open(
title: Text(appLocalizations.iconSets),
leading: const GlyphIcon(AppGlyphs.photos),
widget: const IconSetsView(),
),
];
return BaseScaffold(
title: appLocalizations.customProfileResources,
body: ListView(
padding: const EdgeInsets.symmetric(
horizontal: 16,
).copyWith(top: context.contentTopPadding, bottom: 16),
children: [generateSectionV3(items: items)],
),
);
}
}