# Chapitre 9 : La Couche d'Interface Utilisateur

La couche d'interface utilisateur (UI) est un composant crucial de notre système d'interface graphique, car elle est responsable de la gestion et du rendu de tous les éléments de l'UI. Dans notre structure `Layer`, nous avons deux types d'éléments d'UI : `Button` et `Checkbox`. Ces deux éléments sont stockés dans des vecteurs, ce qui nous permet de gérer n'importe quel nombre de ces éléments.&#x20;

Nous fournissons des méthodes pour ajouter de nouveaux éléments (`add_button`, `add_checkbox`), rendre les éléments (`render`) et gérer les clics de souris (`handle_mouse_click`). Dans la méthode `render`, nous bouclons sur tous les boutons et appelons leur méthode `render`. Par la suite, nous pourrions étendre ceci pour rendre d'autres types d'éléments d'UI également.&#x20;

La méthode `handle_mouse_click`, étant donné les coordonnées x et y d'un clic de souris, vérifie si un bouton ou une case à cocher a été cliqué, et si c'est le cas, déclenche les actions associées.
