Различия
Здесь показаны различия между двумя версиями данной страницы.
| Следующая версия | Предыдущая версия | ||
|
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 | ||
| + | |||
| + | ** При попытке собрать проект с несколькими плагинами реализующими один и тот же интерфейс возникнет ошибка** | ||
| + | |||
| + | ** Один проект, один плагин** | ||