> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://documentation.celestory.io/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Organiser un grand graphe : groupes et blackbox

# 🗂️ Organiser un grand graphe : groupes et blackbox

Au bout de quarante blocs, un graphe devient illisible. Celestory propose deux réponses, et elles n'ont rien à voir l'une avec l'autre.

Le **groupe** est un cadre de couleur posé autour de vos blocs. Il ne change rien à votre application.

La **blackbox** est une vraie découpe : elle sort des blocs de votre graphe et les installe dans un graphe à part, que vous rappelez ensuite d'un seul bloc. 📦

---

## 🎨 Créer un groupe

Sélectionnez au moins deux blocs, puis :

- **Cmd/Ctrl + G**, ou
- clic droit sur la sélection → **Grouper la sélection**.

Un cadre translucide apparaît, nommé **Nouveau groupe**. Il épouse automatiquement les blocs qu'il contient : déplacez un bloc membre, le cadre se redessine autour de lui.

Un groupe ne retient que quatre choses : un nom, une couleur, un verrou, et la liste des blocs qui lui appartiennent. **Rien d'autre.** Il n'existe pas à l'exécution, il ne ralentit rien, il ne se joue pas.

---

## ✏️ Renommer et recolorer

**Double-cliquez sur le cadre**, à un endroit où il n'y a pas de bloc. Un petit panneau s'ouvre avec deux champs : **Nom du groupe** et **Couleur du groupe**.

La touche **Entrée** valide le nom et referme le panneau. Cliquer ailleurs le valide aussi. La couleur, elle, s'applique dès que vous la choisissez — transparence comprise.

🔺 **Un groupe ne s'ouvre pas et ne se replie pas.** Il n'a pas d'intérieur : ce que vous voyez est tout ce qu'il est. Pour vous rapprocher de son contenu, sélectionnez-le et appuyez sur `F`.

---

## ➕ Ajouter et retirer des blocs

Pour **ajouter** un bloc à un groupe existant : faites-le glisser et lâchez-le sur le cadre. Il en devient membre.

Pour **retirer** un bloc : clic droit dessus → **Enlever du groupe**. Si le bloc appartient à plusieurs groupes imbriqués, l'entrée devient **Enlever le bloc des groupes** et le sort de tous d'un coup.

🔺 Si le bloc retiré était le **dernier membre**, le groupe disparaît avec lui. Un groupe vide n'existe pas.

---

## 🔒 Verrouiller un groupe

Cliquez sur le cadre seul, puis clic droit → **Verrouiller le groupe**. Un cadenas s'affiche en haut à droite du cadre.

Un groupe verrouillé se comporte différemment : quand vous **déplacez le cadre, les blocs membres ne suivent plus**. Pratique pour une grande zone de fond que vous ne voulez pas déranger en cliquant à côté. Clic droit → **Déverrouiller le groupe** pour revenir à la normale.

---

## 🧲 Déplacer et sélectionner

Cliquez sur le cadre, glissez : **tous les blocs membres se déplacent ensemble**. C'est le principal service que rend un groupe.

Pour sélectionner les blocs **sans** attraper le cadre, faites **Maj + glisser** en partant d'un point situé à l'intérieur du groupe. Le rectangle de sélection ignore alors les cadres et ne ramasse que les blocs et les liens.

Les groupes s'**imbriquent** : si tous les blocs d'un groupe sont aussi membres d'un groupe plus large, le petit cadre se dessine par-dessus le grand. Vous pouvez donc faire des sous-sections.

---

## 🗑️ Supprimer un groupe : vos blocs restent

C'est la question qui inquiète tout le monde. La réponse est rassurante.

Cliquez sur le **cadre seul** (aucun bloc sélectionné), puis `Suppr` / `Retour arrière`, ou clic droit → **Supprimer 1 élément**. **Seul le cadre disparaît.** Les blocs, leurs liens, leurs valeurs : tout reste exactement en place, simplement dégroupé.

🔺 En revanche, si votre sélection contient **aussi des blocs** — après un `Cmd/Ctrl + A`, par exemple — la suppression emporte les blocs. Vérifiez ce qui est sélectionné avant d'appuyer.

🔺 Et dans l'autre sens : si vous supprimez **tous les blocs** d'un groupe, le cadre s'efface tout seul.

---

## 📦 La blackbox : découper pour de vrai

Sélectionnez des blocs, puis :

- **Cmd/Ctrl + B**, ou
- clic droit → **Blackboxer la sélection**.

Celestory demande un **Nom de la blackbox**, puis **Créer une blackbox**. Ce nom doit être libre : s'il est déjà pris par une autre variable du projet, le bouton affiche **Le nom est déjà pris** et reste inactif.

Voici ce qui se passe alors, en une fois :

1. Un **nouveau graphe** est créé et porte votre nom.
1. Les blocs sélectionnés y sont **déplacés** — ils quittent le graphe d'origine.
1. Deux blocs y apparaissent : **Entrée *nom*** à gauche et **Sortie *nom*** à droite.
1. Chaque lien qui traversait la frontière de votre sélection devient un **point** sur ces deux blocs.
1. À la place laissée vide, un bloc **Ouvrir un graphe** est posé, déjà branché aux mêmes voisins.
1. L'éditeur vous emmène dans le nouveau graphe.

Le graphe créé rejoint la barre latérale, dans votre module ou dans **Graphes globaux**.

---

## 🔁 Rappeler la même blackbox ailleurs

C'est là que la blackbox dépasse le groupe. Le graphe découpé est **réutilisable autant de fois que vous voulez**.

Ajoutez un bloc **Ouvrir un graphe** n'importe où, et choisissez votre graphe dans son entrée **graphe**. Le bloc se reconfigure aussitôt : il affiche les mêmes points que l'**Entrée** et la **Sortie** de la blackbox.

Mieux : ajoutez un point sur le bloc **Entrée** de la blackbox, et **tous** les blocs **Ouvrir un graphe** qui la rappellent gagnent ce point, dans tous vos graphes. Vous avez écrit une routine une fois, vous l'appelez partout.

🔺 Les noms de points sont générés automatiquement à la découpe (`in`, `out`, `text`, `number`…). Renommez-les depuis les blocs **Entrée** et **Sortie** : c'est de là qu'ils viennent.

---

## 🚧 Ce que la blackbox refuse

🔺 **Le bloc Départ ne se blackboxe pas.** S'il fait partie de votre sélection, rien ne se produit — pas de message, pas d'alerte. Désélectionnez-le.

🔺 **Les blocs Entrée et Sortie d'une blackbox non plus.** Ils sont la frontière du graphe, ils ne peuvent pas passer de l'autre côté. Chaque graphe de blackbox garde toujours son bloc **Entrée** et au moins un bloc **Sortie** : vous ne pouvez ni les supprimer tous, ni en ajouter un second de la même sorte.

🔺 **Les groupes ne traversent pas.** Si votre sélection contenait des cadres, ils ne sont pas recréés dans le nouveau graphe. Les blocs arrivent dégroupés, il faut les regrouper à la main.

---

## ⚖️ Groupe ou blackbox ?

| | Groupe | Blackbox |
| --- | --- | --- |
| Raccourci | `Cmd/Ctrl + G` | `Cmd/Ctrl + B` |
| Ce que c'est | un cadre de couleur | un graphe séparé |
| Les blocs bougent-ils ? | non, ils restent là | oui, ils changent de graphe |
| Effet sur l'application | aucun | un appel de graphe à l'exécution |
| Réutilisable ailleurs ? | non | oui, autant de fois que voulu |
| Supprimer détruit-il le contenu ? | non, le cadre seul | oui, c'est un graphe entier |

En résumé : le groupe **range ce que vous voyez**, la blackbox **range ce que vous construisez**. Commencez par des groupes. Passez à la blackbox le jour où vous copiez-collez la même séquence pour la troisième fois.

---

## 💬 Annoter le canevas

Ni l'un ni l'autre ne remplace une phrase en français posée à côté d'une zone compliquée. Pour cela, Celestory a un bloc dédié : le bloc **Commentaire**, qui ne se branche à rien et ne fait qu'afficher votre texte sur le canevas.

Sa fiche complète est dans la documentation des blocs — nous ne la répétons pas ici.

Le trio qui tient un gros projet : **Commentaire** pour dire pourquoi, **groupe** pour délimiter où, **blackbox** pour ranger ce qui n'a plus besoin d'être vu. 🎯

---

→ Prochaine étape : ouvrez votre plus gros graphe, entourez d'un groupe la première séquence que vous reconnaissez, nommez-la. Puis repérez la séquence que vous avez déjà recopiée ailleurs : celle-là, blackboxez-la.
