Select Git revision
-
Benoît Harrault authoredBenoît Harrault authored
board.dart 1.24 KiB
import 'package:flutter/material.dart';
import 'package:jeweled_game/layout/board_painter.dart';
import 'package:jeweled_game/provider/data.dart';
import 'package:jeweled_game/utils/board_utils.dart';
class Board {
static Container buildGameBoard(Data myProvider, double boardWidth) {
return Container(
margin: EdgeInsets.all(4),
padding: EdgeInsets.all(4),
child: Column(
children: [
Container(
child: Center(
child: GestureDetector(
onTapUp: (details) {
double xTap = details.localPosition.dx;
double yTap = details.localPosition.dy;
int col = xTap ~/ (boardWidth / myProvider.sizeHorizontal);
int row = yTap ~/ (boardWidth / myProvider.sizeVertical);
BoardUtils.tapOnCell(myProvider, row, col);
},
child: Container(
child: CustomPaint(
size: Size(boardWidth, boardWidth),
willChange: false,
painter: BoardPainter(myProvider),
isComplex: true,
),
),
),
),
)
],
),
);
}
}