// Copyright (c) 2022 Yevhen Babiichuk (DustDFG), <dfgdust@gmail.com>.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

#ifndef _BOARD_H_
#define _BOARD_H_

#include "Screen.h"
#include "Sprite.h"

#include "Data.h"
#include <cstdint>

#include <SDL_rect.h>
#include <SDL_events.h>

class Board : public Sprite
{
	public:
		Data* data = new Data();

		SDL_FRect shadowBounds;

		double cellSize;

		Board(Screen* screen);

		void draw() override;
		void drawShadow();

		void drawCellContent(SDL_FRect* bounds, uint8_t contentCode);

		void onBoundsClick(SDL_MouseButtonEvent event) override;

};

#endif
