feat: screens component system

This commit is contained in:
2025-12-13 18:55:39 +01:00
parent 108ee082d8
commit b29fbe8f7b
7 changed files with 92 additions and 31 deletions

23
src/screens/home/index.ts Normal file
View File

@@ -0,0 +1,23 @@
import type { Screen, ScreenContext } from "../../screen";
import { ContactScreen } from "../contact-screen";
import { HomeTopScreen } from "./top";
import { HomeBottomScreen } from "./bottom";
export class HomeScreen implements Screen {
private topScreen = new HomeTopScreen();
private bottomScreen = new HomeBottomScreen();
renderTop(ctx: CanvasRenderingContext2D) {
this.topScreen.render(ctx);
}
renderBottom(ctx: CanvasRenderingContext2D) {
this.bottomScreen.render(ctx);
}
handleTouch(x: number, y: number, context: ScreenContext): void {
if (x >= 205 && x <= 256 && y >= 178 && y <= 192) {
context.navigate(new ContactScreen());
}
}
}