#pragma once

// Select/dropdown con label arriba, lista de opciones y opcional "None".
// Equivalente simple de <Select> de Mantine / fn_library.
//
// Uso:
//   static int idx = 0;
//   const char* langs[] = {"go", "py", "ts", "sh", "cpp"};
//   fn_ui::select("Language", &idx, langs, 5);

namespace fn_ui {

// Renderiza label muted arriba + combo abajo. `selected_idx` se muta cuando
// el usuario elige una opcion. Devuelve true si cambio en este frame.
// `options[i]` son los strings visibles; el indice seleccionado va de 0 a count-1.
// Si allow_none es true, aparece una entrada "(none)" con indice -1.
bool select(const char* label, int* selected_idx,
            const char* const* options, int count,
            bool allow_none = false);

} // namespace fn_ui
