> For the complete documentation index, see [llms.txt](https://lados-organization.gitbook.io/goku/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://lados-organization.gitbook.io/goku/goku-game-engine_es/capitulo-9-la-capa-de-interfaz-de-usuario.md).

# Capítulo 9: La Capa de Interfaz de Usuario

La capa de interfaz de usuario es un componente crucial de nuestro sistema GUI, ya que es responsable de gestionar y renderizar todos los elementos de la interfaz de usuario. En nuestra estructura `Layer`, tenemos dos tipos de elementos de interfaz de usuario: `Button` y `Checkbox`. Estos dos elementos se almacenan en vectores que nos permitirán gestionar cualquier cantidad de estos elementos.&#x20;

Proporcionamos métodos para agregar nuevos elementos (`add_button`, `add_checkbox`), renderizar elementos (`render`) y manejar eventos de clic del mouse (`handle_mouse_click`).&#x20;

En el método `render`, recorremos todos los botones y llamamos a su método `render`. Más adelante, podríamos ampliar esto para renderizar otros tipos de elementos de interfaz de usuario también.&#x20;

El método `handle_mouse_click`, dado un clic del mouse con coordenadas `x` e `y`, verifica si se hizo clic en algún botón o casilla de verificación y, si es así, activa las acciones asociadas.
