Files
kte/Frontend.h
Kyle Isom e4cd4877cc Introduce file picker and GUI configuration with enhancements.
- Add visual file picker for GUI with toggle support.
- Introduce `GUIConfig` class for loading GUI settings from configuration file.
- Refactor window initialization to support dynamic sizing based on configuration.
- Add macOS-specific handling for fullscreen behavior.
- Improve header inclusion order and minor code cleanup.
2025-11-30 18:35:12 -08:00

27 lines
559 B
C++

/*
* Frontend.h - top-level container that couples Input + Renderer and runs the loop
*/
#ifndef KTE_FRONTEND_H
#define KTE_FRONTEND_H
class Editor;
class InputHandler;
class Renderer;
class Frontend {
public:
virtual ~Frontend() = default;
// Initialize the frontend (create window/terminal, etc.)
virtual bool Init(Editor &ed) = 0;
// Execute one iteration (poll input, dispatch, draw). Set running=false to exit.
virtual void Step(Editor &ed, bool &running) = 0;
// Shutdown/cleanup
virtual void Shutdown() = 0;
};
#endif // KTE_FRONTEND_H