> ## Documentation Index
> Fetch the complete documentation index at: https://docs.projectreal.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# ImGuiWindow.CollapsingHeader

> Ajoute un collapsing header start marker, appelle immediatement le content callback avec le meme ImGuiWindow object pour qu il puisse ajouter des nested elements, puis ajoute un header end marker. Pendant le rendering, les nested elements sont ignores tant que le header est collapsed. Les callback errors sont interceptees et ne sont pas renvoyees par cette method.

<div className="real-function-page">
  ```lua theme={null}
  ImGuiWindow.CollapsingHeader(window: ImGuiWindow, label: string, content: function): ImGuiWindow
  ```

  ## Arguments

  <ParamField path={"window"} type={"ImGuiWindow"} required>
    ImGuiWindow object renvoye par imgui.create. Un window detruit ou invalide leve une Lua error.
  </ParamField>

  <ParamField path={"label"} type={"string"} required>
    Header label string transmis au ImGui collapsing header rendu.
  </ParamField>

  <ParamField path={"content"} type={"function"} required>
    Function appelee immediatement avec le meme ImGuiWindow object. Les return values sont ignorees; les erreurs sont interceptees par la method.
  </ParamField>

  ## Retours

  <ResponseField name={"window"} type={"ImGuiWindow"}>
    Le meme ImGuiWindow object, ce qui permet de chain method calls.
  </ResponseField>

  ## Types

  ### ImGuiWindow

  Handle renvoyé par imgui.create. Les méthodes de création de contrôle renvoient le même handle afin que les appels puissent être chaînés.

  | Name               | Type                                                                                                                                            | Required | Description                                                                                            |
  | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------ |
  | `Button`           | `(label: string, onClick: () -> ()) -> ImGuiWindow`                                                                                             | Yes      | Ajoute un bouton et appelle le rappel après un clic.                                                   |
  | `Checkbox`         | `(label: string, checked: any, onChange: (boolean) -> ()) -> ImGuiWindow`                                                                       | Yes      | Ajoute une case à cocher initialisée à l'état fourni.                                                  |
  | `CollapsingHeader` | `(label: string, content: (ImGuiWindow) -> ()) -> ImGuiWindow`                                                                                  | Yes      | Regroupe les contrôles ajoutés par le rappel de contenu sous un en-tête réduit.                        |
  | `ColorPicker`      | `(label: string, red: number?, green: number?, blue: number?, alpha: number?, onChange: (number, number, number, number) -> ()) -> ImGuiWindow` | Yes      | Ajoute un éditeur RGBA ; les composants de couleur omis sont par défaut 1,0.                           |
  | `InputText`        | `(label: string, text: string?, onChange: (string) -> ()) -> ImGuiWindow`                                                                       | Yes      | Ajoute une entrée de texte sur une seule ligne ; le texte initial omis est par défaut une chaîne vide. |
  | `SameLine`         | `() -> ImGuiWindow`                                                                                                                             | Yes      | Place le contrôle suivant sur la même ligne.                                                           |
  | `Separator`        | `() -> ImGuiWindow`                                                                                                                             | Yes      | Ajoute un séparateur horizontal.                                                                       |
  | `SliderFloat`      | `(label: string, value: number, minimum: number, maximum: number, onChange: (number) -> ()) -> ImGuiWindow`                                     | Yes      | Ajoute un curseur à virgule flottante.                                                                 |
  | `SliderInt`        | `(label: string, value: integer, minimum: integer, maximum: integer, onChange: (number) -> ()) -> ImGuiWindow`                                  | Yes      | Ajoute un curseur entier.                                                                              |
  | `Text`             | `(text: string) -> ImGuiWindow`                                                                                                                 | Yes      | Ajoute du texte non interactif.                                                                        |
  | `destroy`          | `() -> ()`                                                                                                                                      | Yes      | Supprime la fenêtre et libère ses rappels enregistrés.                                                 |
</div>
