1. Que signifie DCL ?
DCL est l’acronyme de Dialog Control Language.
C’est un langage de script utilisé spécifiquement dans AutoCAD® pour décrire l’apparence des boîtes de dialogue (les fenêtres avec lesquelles vous interagissez).
2. Est-ce un langage de programmation ?
Pas exactement. Il est plus précis de le qualifier de langage de description ou de langage déclaratif.
Voici la distinction :
- Un langage de programmation (comme AutoLISP, C#, Python) : Contient de la logique (boucles, conditions, calculs). Il dit à l’ordinateur quoi faire.
- Le DCL : Contient de la structure. Il dit à AutoCAD® à quoi cela doit ressembler. Il définit où placer un bouton, une zone de texte ou une liste déroulante.
Note importante : Le DCL ne peut pas fonctionner seul. Il est inerte. Il doit impérativement être piloté par un langage de programmation, généralement AutoLISP (ou Visual LISP), pour gérer les actions (ce qui se passe quand on clique sur le bouton).
3. À quoi sert-il ?
Le DCL sert à créer des interfaces utilisateur personnalisées pour vos programmes et macros dans AutoCAD®.
Au lieu de demander à l’utilisateur de répondre à des questions sur la ligne de commande (ce qui peut être fastidieux), vous pouvez créer une fenêtre professionnelle contenant :
- Des boutons (OK, Annuler, Aide).
- Des cases à cocher (Checkboxes) et des boutons radio.
- Des zones de saisie de texte (Edit boxes).
- Des listes de sélection.
- Des images (Slides).
Cela rend vos routines LISP plus conviviales et plus faciles à utiliser pour ceux qui ne connaissent pas la programmation.
4. Avantages et Inconvénients
Voici un comparatif pour évaluer si le DCL est la bonne solution pour vos projets.
| Avantages (Pourquoi l’utiliser) | Inconvénients (Ses limites) |
|---|---|
| Natif et Intégré : Aucun logiciel supplémentaire n’est requis. Si vous avez AutoCAD®, vous avez le DCL. | Design Daté : Les fenêtres créées ressemblent à celles de Windows 95/98. Il est difficile de créer des interfaces modernes et « sexy ». |
Léger : Les fichiers .dcl sont de simples fichiers texte très petits et rapides à charger. |
Pas d’éditeur visuel : Contrairement à Visual Studio (WinForms/WPF), il n’y a pas de « glisser-déposer ». Vous devez écrire le code pour positionner chaque élément. |
| Simplicité : Pour une boîte de dialogue simple (ex: entrer une valeur et cliquer OK), c’est très rapide à coder. | Positionnement Rigide : La mise en page se fait par des rangées (row) et des colonnes (column). C’est parfois un casse-tête d’aligner les éléments parfaitement. |
| Standardisation : L’interface aura toujours le « look & feel » standard d’AutoCAD®, ce qui rassure l’utilisateur. | Dépendance AutoLISP : La gestion des événements (callbacks) via LISP peut devenir complexe pour des interfaces très dynamiques. |
5. Exemple de structure
Pour vous donner une idée concrète, voici à quoi ressemble le code d’une petite fenêtre DCL :
hello_box : dialog {
label = "Exemple DCL";
: text {
label = "Bonjour, ceci est une boîte DCL.";
alignment = centered;
}
: button {
key = "btn1";
label = "Cliquez-moi";
}
ok_cancel;
}
Ce fichier .dcl crée une fenêtre avec un titre, un texte centré, un bouton personnalisé et les boutons standard OK/Annuler.
Résumé
Le DCL est l’outil de base pour donner un visage à vos scripts AutoLISP. Bien qu’il soit ancien et graphiquement limité, il reste incontournable pour créer des utilitaires légers et portables au sein d’AutoCAD®.
Aide en ligne: Help