Select Git revision
button_delete_saved_game.dart
-
Benoît Harrault authoredBenoît Harrault authored
game.dart 3.04 KiB
import 'package:flutter/material.dart';
import 'package:solitaire_game/layout/board.dart';
import 'package:solitaire_game/provider/data.dart';
import 'package:solitaire_game/utils/game_utils.dart';
class Game {
static Container buildGameWidget(Data myProvider) {
bool gameIsFinished = myProvider.gameIsFinished;
return Container(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
SizedBox(height: 8),
Game.buildTopIndicatorWidget(myProvider),
SizedBox(height: 2),
Expanded(
child: Board.buildGameBoard(myProvider),
),
SizedBox(height: 2),
Container(
child: gameIsFinished ? Game.buildEndGameMessage(myProvider) : SizedBox(height: 2),
),
],
),
);
}
static Widget buildTopIndicatorWidget(Data myProvider) {
int allowedMovesCount = myProvider.allowedMovesCount;
return Table(
children: [
TableRow(
children: [
Column(
children: [
Text(
'♟️ ' + myProvider.remainingPegsCount.toString(),
style: TextStyle(
fontSize: 40,
fontWeight: FontWeight.w600,
color: Colors.black,
),
),
],
),
Column(
children: [
Text(
allowedMovesCount.toString(),
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w600,
color: Colors.green,
),
),
],
),
],
),
],
);
}
static TextButton buildQuitGameButton(Data myProvider) {
return TextButton(
child: Container(
child: Image(