diff --git a/documentation/dart_package.md b/documentation/dart_package.md index e9c7472..c46f97c 100644 --- a/documentation/dart_package.md +++ b/documentation/dart_package.md @@ -116,4 +116,4 @@ flutter: platforms: aurora: dartPluginClass: DartPackageDevice -``` \ No newline at end of file +``` diff --git a/documentation/ffi_plugin_package.md b/documentation/ffi_plugin_package.md index 64e33dc..7f6efaf 100644 --- a/documentation/ffi_plugin_package.md +++ b/documentation/ffi_plugin_package.md @@ -182,4 +182,4 @@ class FFIPluginDevice extends DevicePlatform { return deviceName == '' ? null : deviceName; } } -``` \ No newline at end of file +``` diff --git a/documentation/plugin_package.md b/documentation/plugin_package.md index 60316c2..2681950 100644 --- a/documentation/plugin_package.md +++ b/documentation/plugin_package.md @@ -163,4 +163,4 @@ class MethodChannelPluginDevice extends DevicePlatform { return await methodChannel.invokeMethod('getDeviceName'); } } -``` \ No newline at end of file +``` diff --git a/documentation/qt_plugin_package.md b/documentation/qt_plugin_package.md index 4c853c9..4b95a44 100644 --- a/documentation/qt_plugin_package.md +++ b/documentation/qt_plugin_package.md @@ -13,8 +13,8 @@ Qt plugin package - является обычным плагином типа "[ #include class PLUGIN_EXPORT PluginDevicePlugin final - : public QObject, - public PluginInterface + : public QObject + , public PluginInterface { Q_OBJECT @@ -104,6 +104,14 @@ void PluginDevicePlugin::unimplemented(const MethodCall &call) set_target_properties(${PLUGIN_NAME} PROPERTIES CXX_VISIBILITY_PRESET hidden AUTOMOC ON) ``` +Для подключения Qt в плагин нужно добавить в `CMakeLists.txt` как минимум [QtCore](https://doc.qt.io/qt-5/qtcore-index.html): + +``` +find_package(Qt5 COMPONENTS Core REQUIRED) + +target_link_libraries(${PLUGIN_NAME} PUBLIC Qt5::Core) +``` + Для работы плагина в приложении Qt нужно включить отдельно. Сделать это можно добавив в `main` функцию приложения вызов метода `EnableQtCompatibility()`. Выглядеть это может следующим образом: ```cpp @@ -120,4 +128,4 @@ int main(int argc, char *argv[]) { } ``` -Добавив зависимости в плагин начнут работать сигналы и слоты Qt. ОС Аврора очень зависит от Qt, во Flutter мы стараемся минимизировать эту зависимость. Если есть возможность выбора типа для реализации платформо-зависимого плагина использование Qt нежелательно. \ No newline at end of file +Добавив зависимости в плагин начнут работать сигналы и слоты Qt. ОС Аврора очень зависит от Qt, во Flutter мы стараемся минимизировать эту зависимость. Если есть возможность выбора типа для реализации платформо-зависимого плагина использование Qt нежелательно.