From OpenSCADAWiki
Основою практично всіх елементів рушія став об'єкт абстрактного елементу візуалізації VCA::Widget. На своєму абстрактному рівні об'єкт наділено наступними властивостями:
- "Використального" наслідування — механізм наслідування окремих властивостей другого екземпляру об'єкту. Використовується для організації механізму вторинного використання — перевизначення та довизначення елементів візуалізації.
- Зберігання властивостей (атрибутів) віджетів з механізмами "використального" наслідування значень. Механізм "використального" наслідування виконує наслідування значень властивостей з самого кореневого елементу та до верхнього з можливістю перевизначення значень на кожному з рівнів. При цьому, у БД зберігаються тільки значення змінених властивостей.
- Підтримка режиму контейнеру. У цьому режимі віджет може включати інші(дочірні) віджети, як бібліотека віджетів містить віджети. Використовується у бібліотечних віджетах, які успадковують властивості примітиву-контейнеру, наприклад примітив кадру "Box". Також, ця властивість використовується у сеансі проєкту для побудови ієрархічного дерева віджетів (примітивів) при формуванні кінцевого образу візуалізації кадрів.
- Підтримка режиму простого зв'язування. Цей режим використовується для вкладених віджетів бібліотеки. Особливістю цього режиму є те, що він не успадковує властивості контейнеру, а значить не може прямо містити вкладені віджети (розділ 4.5).
- Містить процедуру внутрішньої логіки віджету на мові OpenSCADA. Логіка цієї процедури може використовуватися для організації взаємодії вкладених віджетів та контейнеру один з одним формуючи потрібну поведінку.
- Надання доступу до ресурсів з урахуванням ієрархії "використального" наслідування.