d976595879
Main / Build (BookPlayer) (push) Has been cancelled
Main / Build (Brainfuck) (push) Has been cancelled
Main / Build (Breakout) (push) Has been cancelled
Main / Build (Calculator) (push) Has been cancelled
Main / Build (Diceware) (push) Has been cancelled
Main / Build (EpubReader) (push) Has been cancelled
Main / Build (GPIO) (push) Has been cancelled
Main / Build (GraphicsDemo) (push) Has been cancelled
Main / Build (HelloWorld) (push) Has been cancelled
Main / Build (M5UnitTest) (push) Has been cancelled
Main / Build (Magic8Ball) (push) Has been cancelled
Main / Build (MediaKeys) (push) Has been cancelled
Main / Build (MystifyDemo) (push) Has been cancelled
Main / Build (SerialConsole) (push) Has been cancelled
Main / Build (Snake) (push) Has been cancelled
Main / Build (TamaTac) (push) Has been cancelled
Main / Build (TodoList) (push) Has been cancelled
Main / Build (TwoEleven) (push) Has been cancelled
Main / Bundle (push) Has been cancelled
28 lines
559 B
C++
28 lines
559 B
C++
#pragma once
|
|
|
|
#include <lvgl.h>
|
|
#include <cstdint>
|
|
|
|
namespace GameKit {
|
|
|
|
struct GridPos {
|
|
int16_t x = 0;
|
|
int16_t y = 0;
|
|
};
|
|
|
|
inline bool operator==(GridPos a, GridPos b) { return a.x == b.x && a.y == b.y; }
|
|
inline bool operator!=(GridPos a, GridPos b) { return !(a == b); }
|
|
|
|
struct GridSpec {
|
|
uint8_t cols = 0;
|
|
uint8_t rows = 0;
|
|
uint16_t cellPx = 0;
|
|
uint16_t originX = 0;
|
|
uint16_t originY = 0;
|
|
};
|
|
|
|
lv_point_t gridToPx(const GridSpec& grid, GridPos pos);
|
|
bool gridContains(const GridSpec& grid, GridPos pos);
|
|
|
|
} // namespace GameKit
|