diff --git a/lib/presentation/views/main_menu/match_view/create_match/choose_game_view.dart b/lib/presentation/views/main_menu/match_view/create_match/choose_game_view.dart index fc9e76c..cdd73c2 100644 --- a/lib/presentation/views/main_menu/match_view/create_match/choose_game_view.dart +++ b/lib/presentation/views/main_menu/match_view/create_match/choose_game_view.dart @@ -6,7 +6,7 @@ import 'package:tallee/core/custom_theme.dart'; import 'package:tallee/data/db/database.dart'; import 'package:tallee/data/models/game.dart'; import 'package:tallee/l10n/generated/app_localizations.dart'; -import 'package:tallee/presentation/views/main_menu/match_view/create_match/create_game/create_game_view.dart'; +import 'package:tallee/presentation/views/main_menu/match_view/create_match/create_game_view.dart'; import 'package:tallee/presentation/widgets/text_input/custom_search_bar.dart'; import 'package:tallee/presentation/widgets/tiles/game_tile.dart'; diff --git a/lib/presentation/views/main_menu/match_view/create_match/create_game/choose_color_view.dart b/lib/presentation/views/main_menu/match_view/create_match/create_game/choose_color_view.dart deleted file mode 100644 index e6d0b7e..0000000 --- a/lib/presentation/views/main_menu/match_view/create_match/create_game/choose_color_view.dart +++ /dev/null @@ -1,78 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:tallee/core/common.dart'; -import 'package:tallee/core/custom_theme.dart'; -import 'package:tallee/core/enums.dart'; -import 'package:tallee/l10n/generated/app_localizations.dart'; -import 'package:tallee/presentation/widgets/tiles/game_tile.dart'; - -class ChooseColorView extends StatefulWidget { - /// A view that allows the user to choose a color from a list of available game colors - /// - [initialColor]: The initially selected color - const ChooseColorView({super.key, this.initialColor}); - - /// The initially selected color - final GameColor? initialColor; - - @override - State createState() => _ChooseColorViewState(); -} - -class _ChooseColorViewState extends State { - /// Currently selected color - GameColor? selectedColor; - - @override - void initState() { - selectedColor = widget.initialColor; - super.initState(); - } - - @override - Widget build(BuildContext context) { - final loc = AppLocalizations.of(context); - const colors = GameColor.values; - - return Scaffold( - backgroundColor: CustomTheme.backgroundColor, - appBar: AppBar( - leading: IconButton( - icon: const Icon(Icons.arrow_back_ios), - onPressed: () { - Navigator.of(context).pop(selectedColor); - }, - ), - title: Text(loc.choose_color), - ), - body: PopScope( - canPop: false, - onPopInvokedWithResult: (bool didPop, Object? result) { - if (didPop) return; - Navigator.of(context).pop(selectedColor); - }, - child: ListView.builder( - padding: const EdgeInsets.only(bottom: 85), - itemCount: colors.length, - itemBuilder: (BuildContext context, int index) { - final color = colors[index]; - return GameTile( - onTap: () { - setState(() { - if (selectedColor == color) { - selectedColor = null; - } else { - selectedColor = color; - } - }); - }, - title: translateGameColorToString(color, context), - description: '', - isHighlighted: selectedColor == color, - badgeText: ' ', //Breite für Color Badge - badgeColor: getColorFromGameColor(color), - ); - }, - ), - ), - ); - } -} diff --git a/lib/presentation/views/main_menu/match_view/create_match/create_game/choose_ruleset_view.dart b/lib/presentation/views/main_menu/match_view/create_match/create_game/choose_ruleset_view.dart deleted file mode 100644 index 6b69b22..0000000 --- a/lib/presentation/views/main_menu/match_view/create_match/create_game/choose_ruleset_view.dart +++ /dev/null @@ -1,99 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:tallee/core/common.dart'; -import 'package:tallee/core/custom_theme.dart'; -import 'package:tallee/core/enums.dart'; -import 'package:tallee/l10n/generated/app_localizations.dart'; -import 'package:tallee/presentation/widgets/tiles/title_description_list_tile.dart'; - -class ChooseRulesetView extends StatefulWidget { - /// A view that allows the user to choose a ruleset from a list of available rulesets - /// - [rulesets]: A list of tuples containing the ruleset and its description - /// - [initialRulesetIndex]: The index of the initially selected ruleset - const ChooseRulesetView({ - super.key, - required this.rulesets, - required this.initialRulesetIndex, - }); - - /// A list of tuples containing the ruleset and its description - final List<(Ruleset, String)> rulesets; - - /// The index of the initially selected ruleset - final int initialRulesetIndex; - @override - State createState() => _ChooseRulesetViewState(); -} - -class _ChooseRulesetViewState extends State { - /// Currently selected ruleset index - late int selectedRulesetIndex; - - @override - void initState() { - selectedRulesetIndex = widget.initialRulesetIndex; - super.initState(); - } - - @override - Widget build(BuildContext context) { - final loc = AppLocalizations.of(context); - return DefaultTabController( - length: 2, - initialIndex: 0, - child: Scaffold( - backgroundColor: CustomTheme.backgroundColor, - appBar: AppBar( - leading: IconButton( - icon: const Icon(Icons.arrow_back_ios), - onPressed: () { - Navigator.of(context).pop( - selectedRulesetIndex == -1 - ? null - : widget.rulesets[selectedRulesetIndex].$1, - ); - }, - ), - title: Text(loc.choose_ruleset), - ), - body: PopScope( - // This fixes that the Android Back Gesture didn't return the - // selectedRulesetIndex and therefore the selected Ruleset wasn't saved - canPop: false, - onPopInvokedWithResult: (bool didPop, Object? result) { - if (didPop) { - return; - } - Navigator.of(context).pop( - selectedRulesetIndex == -1 - ? null - : widget.rulesets[selectedRulesetIndex].$1, - ); - }, - child: ListView.builder( - padding: const EdgeInsets.only(bottom: 85), - itemCount: widget.rulesets.length, - itemBuilder: (BuildContext context, int index) { - return TitleDescriptionListTile( - onTap: () async { - setState(() { - if (selectedRulesetIndex == index) { - selectedRulesetIndex = -1; - } else { - selectedRulesetIndex = index; - } - }); - }, - title: translateRulesetToString( - widget.rulesets[index].$1, - context, - ), - description: widget.rulesets[index].$2, - isHighlighted: selectedRulesetIndex == index, - ); - }, - ), - ), - ), - ); - } -} diff --git a/lib/presentation/views/main_menu/match_view/create_match/create_game/create_game_view.dart b/lib/presentation/views/main_menu/match_view/create_match/create_game_view.dart similarity index 100% rename from lib/presentation/views/main_menu/match_view/create_match/create_game/create_game_view.dart rename to lib/presentation/views/main_menu/match_view/create_match/create_game_view.dart