#pragma once #include #include "window_action.h" class TextRenderer; class IWindowContent { public: virtual ~IWindowContent(void) = default; virtual void update(void) = 0; virtual void handle_input(SDL_Event* event) = 0; virtual void render(TextRenderer* renderer, int x, int y, int width, int height, bool show_cursor = 0) = 0; virtual void scroll(int amount, int content_height) = 0; virtual bool should_close(void) = 0; virtual WindowAction get_pending_action() = 0; };