20 lines
533 B
C++
20 lines
533 B
C++
#pragma once
|
|
|
|
#include <SDL3/SDL_events.h>
|
|
|
|
#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;
|
|
};
|