#ifndef UI_LIST_H
#define UI_LIST_H

#include "SDL_pixels.h"
#include "SDL_render.h"
#include "aliases/aliases.h"

typedef struct {
  union {
    u32 colour;
    SDL_Color rgba;
  };
} colour_t;

typedef struct {
  u64 item_w;
  u64 item_h;
  u64 selected;
  u64 length;
  SDL_Texture **textures;
  SDL_Texture **selected_textures;
} ui_list_t;

u64 ui_list(const ui_list_t *list, u64 x, u64 y, u64 padding, i64 mouse_x,
            i64 mouse_y, i64 clicked_x, i64 clicked_y, SDL_Renderer *renderer,
            colour_t bg_colour, colour_t hover_colour);

#endif // !UI_LIST_H
