Browse Source

[documentation] Add QtCore

merge-requests/30/head
Vitaliy Zarubin 1 year ago
parent
commit
c867bae9f8
  1. 2
      documentation/dart_package.md
  2. 2
      documentation/ffi_plugin_package.md
  3. 2
      documentation/plugin_package.md
  4. 14
      documentation/qt_plugin_package.md

2
documentation/dart_package.md

@ -116,4 +116,4 @@ flutter:
platforms:
aurora:
dartPluginClass: DartPackageDevice
```
```

2
documentation/ffi_plugin_package.md

@ -182,4 +182,4 @@ class FFIPluginDevice extends DevicePlatform {
return deviceName == '' ? null : deviceName;
}
}
```
```

2
documentation/plugin_package.md

@ -163,4 +163,4 @@ class MethodChannelPluginDevice extends DevicePlatform {
return await methodChannel.invokeMethod<String>('getDeviceName');
}
}
```
```

14
documentation/qt_plugin_package.md

@ -13,8 +13,8 @@ Qt plugin package - является обычным плагином типа "[
#include <QtCore>
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 нежелательно.
Добавив зависимости в плагин начнут работать сигналы и слоты Qt. ОС Аврора очень зависит от Qt, во Flutter мы стараемся минимизировать эту зависимость. Если есть возможность выбора типа для реализации платформо-зависимого плагина использование Qt нежелательно.

Loading…
Cancel
Save