Select Git revision
game_board.dart
-
Benoît Harrault authoredBenoît Harrault authored
parameters.dart 2.80 KiB
import 'package:flutter/material.dart';
import '../provider/data.dart';
import '../utils/game_utils.dart';
class Parameters {
static const double _parameterButtonSize = 70;
static const double _startButtonSize = 150;
static Container buildParametersSelector(Data myProvider) {
return Container(
child: Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: [
Parameters.buildParameterSelector(myProvider, 'difficulty'),
Parameters.buildParameterSelector(myProvider, 'size'),
Parameters.buildParameterSelector(myProvider, 'skin'),
Parameters.buildStartGameButton(myProvider),
],
),
);
}
static Column buildStartGameButton(Data myProvider) {
return Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: [
FlatButton(
child: Image(
image: AssetImage('assets/icons/button_start.png'),
width: _startButtonSize,
height: _startButtonSize,
fit: BoxFit.fill
),
onPressed: () => GameUtils.startGame(myProvider),
)
],
);
}
static Column buildParameterSelector(Data myProvider, String parameterCode) {
List availableValues = myProvider.getParameterAvailableValues(parameterCode);
return Column(
children: [
Table(
defaultColumnWidth: IntrinsicColumnWidth(),
children: [
TableRow(
children: [
for (var index = 0; index < availableValues.length; index++)
Column(
children: [
_buildParameterButton(myProvider, parameterCode, availableValues[index])
]
),
],
),
],
),
SizedBox(height: 20),
]
);
}