Модуль: | QTStarter |
Ім'я: | Qt GUI пускач |
Тип: | Користувацькі інтерфейси |
Джерело: | ui_QTStarter.so |
Версія: | 1.9 |
Автор: | Роман Савоченко |
Опис: | Надає Qt GUI пускач. Qt-пускач є єдиним та обов'язковим компонентом для всіх GUI модулів, основаних на бібліотеці Qt. |
Ліцензія: | GPL |
Модуль <QTStarter> надає в систему OpenSCADA пускач Qt GUI модулів. Окремий модуль для запуску Qt GUI модулів знадобився з причини потреби у організації однопотокового виконання всіх компонентів та централізованої ініціалізації головного об'єкту Qt-бібліотеки — QApplication.
Для запуску Qt GUI модулів використовується розширений інтерфейс виклику функцій модулів. Цей інтерфейс передбачає експортування функцій зовнішніми модулями. У нашому випадку Qt GUI модулі повинні експортувати наступні функції:
Для ідентифікації Qt GUI модуль повинен визначити інформаційний елемент модуля "SubType" як "Qt". Виходячи з цієї ознаки, "Стартер" з ним працює.
Після отримання об'єкту головного вікна "Стартер" додає власну панель керування та пункт меню у це вікно та запускає його. Панель керування Стартеру містить іконки для виклику всіх доступних Qt GUI модулів. Для виключення додання панелі керування або пункту меню модуль, який містить вікно, може вказати властивості "QTStarterToolDis" або "QTStarterMenuDis" відповідно.
Для визначення Qt GUI модулів, які запускаються при старті, модуль стартеру містить конфігураційне поле StartMod. У цьому полі записуються ідентифікатори модулів що запускаються через ';'. Конфігураційне поле StartMod можна описати у конфігураційному файлі, а також у системній таблиці БД через діалог конфігурації модуля (рис.1).
У випадку закриття вікон всіх Qt GUI модулів "Стартер" створює власне діалогове вікно, яке передбачає обрання доступних Qt GUI модулів або завершення роботи системи OpenSCADA. Вигляд діалогового вікна наведено на рис.2.
Модулем здійснюється відключення функції запуску програми після її закриття при виході.