Введение

Язык управления диалогами (DCL) — это язык описания высокого уровня и интерпретатор в AutoCAD, предназначенный для создания простых графических диалоговых окон. Расширения AutoLISP используют его для взаимодействия с пользователем в среде AutoCAD.

Особенности и использование

В отличие от других основных GUI API, DCL не является полноценным набором инструментов GUI для прикладного программирования. Он предназначен исключительно для создания простых диалоговых окон в AutoCAD. Он включает в себя базовые элементы управления формы, такие как текстовые поля, кнопки, флажки и списки. DCL объектно-ориентирован и обеспечивает повторное использование кода посредством наследования и композиции. Синтаксис DCL основан на определении и использовании "тайлов" (плиток). "Тайл" представляет собой элемент графического интерфейса, например, текстовое поле или текстовую метку. Тайлы также могут представлять элементы управления, содержащие другие элементы управления, такие как столбцы, группы переключателей и сами диалоговые окна. DCL предоставляет встроенные тайлы для всех основных элементов управления, а новые тайлы могут быть определены путем наследования и композиции существующих тайлов. DCL позволяет взаимодействовать с диалоговым окном во время выполнения с помощью кода Lisp. Определенные элементы управления могут быть связаны с действиями путем указания функции AutoLISP для выполнения и передаваемых ей значений. В отличие от других типов графических интерфейсов, диалоговые окна DCL нельзя существенно изменять во время выполнения. Содержимое некоторых элементов управления, таких как текстовые поля и списки, можно изменять, но элементы управления нельзя удалять или добавлять в диалоговое окно.

Альтернативные технологии

Для создания более универсальных графических интерфейсов и других расширений в CAD, AutoDesk предлагает несколько альтернативных решений. API ObjectARX для C++ позволяет разрабатывать расширения непосредственно в Microsoft Visual Studio. VBA поддерживает программирование методом перетаскивания для AutoCAD, аналогично Microsoft Office и другим приложениям. Начиная с AutoCAD 2007 и более поздних версий, программы AutoLISP или Visual LISP могут вызывать подпрограммы, написанные в Visual Studio .NET (VB или C#). Программисты теперь могут создавать диалоговые окна на VB или C#, использующие весь спектр элементов управления, доступных в API .NET Forms, и вызывать их из Visual LISP.