Skip to content
Snippets Groups Projects
button_game_start_new.dart 1.25 KiB
Newer Older
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';

import 'package:reversi/cubit/game_cubit.dart';
import 'package:reversi/cubit/settings_game_cubit.dart';
import 'package:reversi/cubit/settings_global_cubit.dart';
import 'package:reversi/ui/helpers/styled_button.dart';

class StartNewGameButton extends StatelessWidget {
  const StartNewGameButton({super.key});

  @override
  Widget build(BuildContext context) {
    return BlocBuilder<GameSettingsCubit, GameSettingsState>(
      builder: (BuildContext context, GameSettingsState gameSettingsState) {
        return BlocBuilder<GlobalSettingsCubit, GlobalSettingsState>(
          builder: (BuildContext context, GlobalSettingsState globalSettingsState) {
            return StyledButton(
              color: Colors.blue,
              onPressed: () {
                BlocProvider.of<GameCubit>(context).startNewGame(
                  gameSettings: gameSettingsState.settings,
                  globalSettings: globalSettingsState.settings,
                );
              },
              child: const Image(
                image: AssetImage('assets/ui/button_start.png'),
                fit: BoxFit.fill,
              ),
            );
          },
        );
      },
    );
  }
}