Различия
Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
doc:vsq:quick:plugin [2017/12/07 12:05] alexeyb создано |
doc:vsq:quick:plugin [2018/01/23 13:22] (текущий) alexeyb |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
==== Пишем плагин для VSQProject ==== | ==== Пишем плагин для VSQProject ==== | ||
+ | === Сборка минимум qt 5.5.1 (младшие не видят UI plugin)=== | ||
https://AlValBel@bitbucket.org/AlValBel/vsq_pluging_template | https://AlValBel@bitbucket.org/AlValBel/vsq_pluging_template | ||
Структура каталога | Структура каталога | ||
- | * interfaces (содержит интерфейс(ы), которые будет реализовывать плагин) | + | * interfaces (содержит интерфейс(ы), которые будет реализовывать плагин, те же самые интерфейсы должны быть и у vsq) |
* plugs (место размещения плагина) | * plugs (место размещения плагина) | ||
Строка 17: | Строка 18: | ||
VsqAction* vsqActionInComponent(Component* aComp, VsqAction* aAction); | VsqAction* vsqActionInComponent(Component* aComp, VsqAction* aAction); | ||
Q_DECLARE_INTERFACE(Component,"ru.prom-auto.VSQ.Component") | Q_DECLARE_INTERFACE(Component,"ru.prom-auto.VSQ.Component") | ||
+ | // **имя, уникальный идентификатор** | ||
#endif // COMPONENT_H | #endif // COMPONENT_H | ||
+ | сам плагин будет реализовывать интерфейс (фрагмент) | ||
+ | class VSQPlugTest: public Component{ | ||
+ | Q_OBJECT | ||
+ | Q_PLUGIN_METADATA(IID "org.promauto.vsq.VSQPlugTest") | ||
+ | Q_INTERFACES(Component) | ||
+ | //.... | ||
+ | |||
+ | Собираем проект, полученный *.so или *.dll помещаем в дирректорию plugins внутри папки с исполняемым файлом VSQ | ||
+ | |||
+ | ** При попытке собрать проект с несколькими плагинами реализующими один и тот же интерфейс возникнет ошибка** | ||
+ | |||
+ | ** Один проект, один плагин** | ||