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