Files
notebrook-notes/frontend/src/views/view.ts

33 lines
795 B
TypeScript
Raw Normal View History

2024-09-03 14:50:33 +02:00
import { Container } from "../ui/container";
import { UIWindow } from "../ui/window";
import { ViewManager } from "./view-manager";
export abstract class View {
protected viewManager: ViewManager;
protected window: Container;
private active!: boolean;
public constructor(viewManager: ViewManager) {
this.viewManager = viewManager;
this.window = new Container("Base view");
}
public show() {
return this.window;
}
public abstract onActivate(): void;
public abstract onDeactivate(): void;
public abstract onCreate(): void;
public abstract onDestroy(): void;
public isActive() {
return this.isActive;
}
public setActive(val: boolean) {
this.active = val;
}
}