mirror of
https://github.com/vodemn/m3_lightmeter.git
synced 2024-11-21 15:00:40 +00:00
Rearranged settings screen files
This commit is contained in:
parent
c48f2ae373
commit
59287d06bc
27 changed files with 103 additions and 48 deletions
|
@ -0,0 +1,25 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:lightmeter/generated/l10n.dart';
|
||||
import 'package:lightmeter/screens/settings/components/shared/settings_section/widget_settings_section.dart';
|
||||
|
||||
import 'components/report_issue/widget_list_tile_report_issue.dart';
|
||||
import 'components/source_code/widget_list_tile_source_code.dart';
|
||||
import 'components/version/widget_list_tile_version.dart';
|
||||
import 'components/write_email/widget_list_tile_write_email.dart';
|
||||
|
||||
class AboutSettingsSection extends StatelessWidget {
|
||||
const AboutSettingsSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return SettingsSection(
|
||||
title: S.of(context).about,
|
||||
children: const [
|
||||
SourceCodeListTile(),
|
||||
ReportIssueListTile(),
|
||||
WriteEmailListTile(),
|
||||
VersionListTile(),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:lightmeter/generated/l10n.dart';
|
||||
import 'package:lightmeter/screens/settings/components/shared/settings_section/widget_settings_section.dart';
|
||||
|
||||
import 'components/caffeine/provider_list_tile_caffeine.dart';
|
||||
import 'components/haptics/provider_list_tile_haptics.dart';
|
||||
import 'components/language/widget_list_tile_language.dart';
|
||||
|
||||
class GeneralSettingsSection extends StatelessWidget {
|
||||
const GeneralSettingsSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return SettingsSection(
|
||||
title: S.of(context).general,
|
||||
children: const [
|
||||
CaffeineListTileProvider(),
|
||||
HapticsListTileProvider(),
|
||||
LanguageListTile(),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:lightmeter/generated/l10n.dart';
|
||||
import 'package:lightmeter/screens/settings/components/shared/settings_section/widget_settings_section.dart';
|
||||
|
||||
import 'components/calibration/widget_list_tile_calibration.dart';
|
||||
import 'components/fractional_stops/widget_list_tile_fractional_stops.dart';
|
||||
|
||||
class MeteringSettingsSection extends StatelessWidget {
|
||||
const MeteringSettingsSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return SettingsSection(
|
||||
title: S.of(context).metering,
|
||||
children: const [
|
||||
StopTypeListTile(),
|
||||
CalibrationListTile(),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:lightmeter/data/models/dynamic_colors_state.dart';
|
||||
import 'package:lightmeter/generated/l10n.dart';
|
||||
import 'package:lightmeter/screens/settings/components/shared/settings_section/widget_settings_section.dart';
|
||||
|
||||
import 'components/dynamic_color/widget_list_tile_dynamic_color.dart';
|
||||
import 'components/primary_color/widget_list_tile_primary_color.dart';
|
||||
import 'components/theme_type/widget_list_tile_theme_type.dart';
|
||||
|
||||
class ThemeSettingsSection extends StatelessWidget {
|
||||
const ThemeSettingsSection({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return SettingsSection(
|
||||
title: S.of(context).theme,
|
||||
children: [
|
||||
const ThemeTypeListTile(),
|
||||
const PrimaryColorListTile(),
|
||||
if (context.read<DynamicColorState>() != DynamicColorState.unavailable)
|
||||
const DynamicColorListTile(),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
|
@ -1,22 +1,11 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:lightmeter/data/models/dynamic_colors_state.dart';
|
||||
import 'package:lightmeter/generated/l10n.dart';
|
||||
import 'package:lightmeter/res/dimens.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import 'components/caffeine/provider_list_tile_caffeine.dart';
|
||||
import 'components/calibration/widget_list_tile_calibration.dart';
|
||||
import 'components/haptics/provider_list_tile_haptics.dart';
|
||||
import 'components/language/widget_list_tile_language.dart';
|
||||
import 'components/primary_color/widget_list_tile_primary_color.dart';
|
||||
import 'components/report_issue/widget_list_tile_report_issue.dart';
|
||||
import 'components/shared/settings_section/widget_settings_section.dart';
|
||||
import 'components/source_code/widget_list_tile_source_code.dart';
|
||||
import 'components/dynamic_color/widget_list_tile_dynamic_color.dart';
|
||||
import 'components/theme_type/widget_list_tile_theme_type.dart';
|
||||
import 'components/version/widget_list_tile_version.dart';
|
||||
import 'components/fractional_stops/widget_list_tile_fractional_stops.dart';
|
||||
import 'components/write_email/widget_list_tile_write_email.dart';
|
||||
import 'components/about/widget_settings_section_about.dart';
|
||||
import 'components/general/widget_settings_section_general.dart';
|
||||
import 'components/metering/widget_settings_section_metering.dart';
|
||||
import 'components/theme/widget_settings_section_theme.dart';
|
||||
|
||||
class SettingsScreen extends StatelessWidget {
|
||||
const SettingsScreen({super.key});
|
||||
|
@ -54,39 +43,10 @@ class SettingsScreen extends StatelessWidget {
|
|||
SliverList(
|
||||
delegate: SliverChildListDelegate(
|
||||
<Widget>[
|
||||
SettingsSection(
|
||||
title: S.of(context).metering,
|
||||
children: const [
|
||||
StopTypeListTile(),
|
||||
CalibrationListTile(),
|
||||
],
|
||||
),
|
||||
SettingsSection(
|
||||
title: S.of(context).general,
|
||||
children: const [
|
||||
CaffeineListTileProvider(),
|
||||
HapticsListTileProvider(),
|
||||
LanguageListTile(),
|
||||
],
|
||||
),
|
||||
SettingsSection(
|
||||
title: S.of(context).theme,
|
||||
children: [
|
||||
const ThemeTypeListTile(),
|
||||
const PrimaryColorListTile(),
|
||||
if (context.read<DynamicColorState>() != DynamicColorState.unavailable)
|
||||
const DynamicColorListTile(),
|
||||
],
|
||||
),
|
||||
SettingsSection(
|
||||
title: S.of(context).about,
|
||||
children: const [
|
||||
SourceCodeListTile(),
|
||||
ReportIssueListTile(),
|
||||
WriteEmailListTile(),
|
||||
VersionListTile(),
|
||||
],
|
||||
),
|
||||
const MeteringSettingsSection(),
|
||||
const GeneralSettingsSection(),
|
||||
const ThemeSettingsSection(),
|
||||
const AboutSettingsSection(),
|
||||
SizedBox(height: MediaQuery.of(context).padding.bottom),
|
||||
],
|
||||
),
|
||||
|
|
Loading…
Reference in a new issue