#ifndef INFINITE_CANVAS_DEV_UI_H
#define INFINITE_CANVAS_DEV_UI_H

#include "infinite_canvas/canvas.h"

typedef struct {
    int32 selected_type;
    boolean dropdown_open;
    boolean context_open;
    float context_scroll;
    float context_content_height;
    char context_buffer[CANVAS_CONTEXT_MAX_LENGTH];
} Canvas_Dev_UI;

void Canvas_Dev_UI_Init(
    Canvas_Dev_UI *p_ui,
    Font font,
    const Canvas_Theme *p_theme);
boolean Canvas_Dev_UI_Contains_Pointer(const Canvas_Dev_UI *p_ui);
void Canvas_Dev_UI_Draw(
    Canvas_Dev_UI *p_ui,
    Canvas_Camera *p_camera,
    Canvas_Scene *p_scene,
    Font font,
    Canvas_Theme *p_theme);

#endif
