diff options
Diffstat (limited to 'examples')
24 files changed, 1249 insertions, 27 deletions
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt new file mode 100644 index 000000000..6d366112c --- /dev/null +++ b/examples/CMakeLists.txt @@ -0,0 +1,31 @@ +cmake_minimum_required(VERSION 3.19) + +include(${CMAKE_CURRENT_LIST_DIR}/../.cmake.conf) + +project(QtWebEngineExamples + VERSION "${QT_REPO_MODULE_VERSION}" + DESCRIPTION "Qt WebEngine Examples" + HOMEPAGE_URL "https://qt.io/" + LANGUAGES CXX C +) + +find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) +find_package(Qt6 ${PROJECT_VERSION} CONFIG OPTIONAL_COMPONENTS WebEngineCore WebEngineWidgets WebEngineQuick) +qt_build_repo_begin() +qt_examples_build_begin() + +if(QT_FEATURE_qtwebengine_build AND QT_FEATURE_qtwebengine_quick_build) + add_subdirectory(webengine) +endif() +if(QT_FEATURE_qtwebengine_build AND QT_FEATURE_qtwebengine_widgets_build) + add_subdirectory(webenginewidgets) +endif() +if(QT_FEATURE_qtpdf_build ) + add_subdirectory(pdf) +endif() +if(QT_FEATURE_qtpdf_build AND QT_FEATURE_pdf_widgets) + add_subdirectory(pdfwidgets) +endif() + +qt_examples_build_end() +qt_build_repo_end() diff --git a/examples/examples.pro b/examples/examples.pro index f36b98904..793e46be2 100644 --- a/examples/examples.pro +++ b/examples/examples.pro @@ -1,25 +1,8 @@ -include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/webenginequick/qtwebenginequick-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/webenginewidgets/qtwebenginewidgets-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/pdf/qtpdf-config.pri) -include($$QTWEBENGINE_OUT_ROOT/src/pdfwidgets/qtpdfwidgets-config.pri) - -QT_FOR_CONFIG += \ - buildtools-private \ - webenginequick-private \ - webenginewidgets-private \ - pdf-private \ - pdfwidgets-private - TEMPLATE=subdirs -qtConfig(build-qtwebengine-core):qtConfig(webengine-core-support) { - qtConfig(webengine-quick): SUBDIRS += webengine - qtConfig(webengine-widgets): SUBDIRS += webenginewidgets -} +qtHaveModule(webenginequick): SUBDIRS += webengine +qtHaveModule(webenginewidgets): SUBDIRS += webenginewidgets +qtHaveModule(pdf): SUBDIRS += pdf +qtHaveModule(pdfwidgets): SUBDIRS += pdfwidgets -qtConfig(build-qtpdf):qtConfig(webengine-qtpdf-support) { - SUBDIRS += pdf - qtConfig(pdf-widgets): SUBDIRS += pdfwidgets -} diff --git a/examples/webengine/CMakeLists.txt b/examples/webengine/CMakeLists.txt new file mode 100644 index 000000000..6e306111e --- /dev/null +++ b/examples/webengine/CMakeLists.txt @@ -0,0 +1,8 @@ +add_subdirectory(customdialogs) +add_subdirectory(minimal) +add_subdirectory(quicknanobrowser) +add_subdirectory(webengineaction) +if(TARGET Qt::QuickControls2) + add_subdirectory(lifecycle) + add_subdirectory(recipebrowser) +endif() diff --git a/examples/webengine/customdialogs/CMakeLists.txt b/examples/webengine/customdialogs/CMakeLists.txt new file mode 100644 index 000000000..d6d69548f --- /dev/null +++ b/examples/webengine/customdialogs/CMakeLists.txt @@ -0,0 +1,76 @@ +cmake_minimum_required(VERSION 3.18) +project(customdialogs LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/customdialogs") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineQuick) + +qt_add_executable(customdialogs + main.cpp + server.cpp server.h +) +set_target_properties(customdialogs PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(customdialogs PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineQuick +) + + +# Resources: +set(customdialogs_resource_files + "MessageRectangle.qml" + "SwitchButton.qml" + "WebView.qml" + "forms/Authentication.qml" + "forms/AuthenticationForm.ui.qml" + "forms/Button.qml" + "forms/ColorCell.qml" + "forms/ColorPicker.qml" + "forms/ColorPickerForm.ui.qml" + "forms/FilePicker.qml" + "forms/FilePickerForm.ui.qml" + "forms/FileRow.qml" + "forms/JavaScript.qml" + "forms/JavaScriptForm.ui.qml" + "forms/Menu.qml" + "forms/MenuForm.ui.qml" + "icon.svg" + "index.html" + "main.qml" + "style.css" +) + +qt6_add_resources(customdialogs "customdialogs" + PREFIX + "/" + FILES + ${customdialogs_resource_files} +) + +if(TARGET Qt::Widgets) + target_link_libraries(customdialogs PUBLIC + Qt::Widgets + ) +endif() + +install(TARGETS customdialogs + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webengine/lifecycle/CMakeLists.txt b/examples/webengine/lifecycle/CMakeLists.txt new file mode 100644 index 000000000..0459d7767 --- /dev/null +++ b/examples/webengine/lifecycle/CMakeLists.txt @@ -0,0 +1,58 @@ +cmake_minimum_required(VERSION 3.18) +project(lifecycle LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/lifecycle") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS QuickControls2) +find_package(Qt6 COMPONENTS WebEngineQuick) + +qt_add_executable(lifecycle + main.cpp +) +set_target_properties(lifecycle PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(lifecycle PUBLIC + Qt::Core + Qt::Gui + Qt::QuickControls2 + Qt::WebEngineQuick +) + + +# Resources: +set(resources_resource_files + "WebBrowser.qml" + "WebTab.qml" + "WebTabBar.qml" + "WebTabButton.qml" + "WebTabStack.qml" + "WebToolButton.qml" + "qtquickcontrols2.conf" +) + +qt6_add_resources(lifecycle "resources" + PREFIX + "/" + FILES + ${resources_resource_files} +) + +install(TARGETS lifecycle + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webengine/minimal/CMakeLists.txt b/examples/webengine/minimal/CMakeLists.txt new file mode 100644 index 000000000..db253d8fc --- /dev/null +++ b/examples/webengine/minimal/CMakeLists.txt @@ -0,0 +1,50 @@ +cmake_minimum_required(VERSION 3.18) +project(minimal LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/minimal-qml") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineQuick) + +qt_add_executable(minimal-qml + main.cpp +) +set_target_properties(minimal-qml PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(minimal-qml PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineQuick +) + + +# Resources: +set(qml_resource_files + "main.qml" +) + +qt6_add_resources(minimal-qml "qml" + PREFIX + "/" + FILES + ${qml_resource_files} +) + +install(TARGETS minimal-qml + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webengine/quicknanobrowser/CMakeLists.txt b/examples/webengine/quicknanobrowser/CMakeLists.txt new file mode 100644 index 000000000..6c155789c --- /dev/null +++ b/examples/webengine/quicknanobrowser/CMakeLists.txt @@ -0,0 +1,91 @@ +cmake_minimum_required(VERSION 3.18) +project(quicknanobrowser LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/quicknanobrowser") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) +find_package(Qt6 COMPONENTS WebEngineQuick) + +qt_add_executable(quicknanobrowser + main.cpp + utils.h +) +set_target_properties(quicknanobrowser PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(quicknanobrowser PUBLIC + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick + Qt::WebEngineQuick +) + + +# Resources: +set(resources_resource_files + "ApplicationRoot.qml" + "BrowserDialog.qml" + "BrowserWindow.qml" + "DownloadView.qml" + "FindBar.qml" + "FullScreenNotification.qml" +) + +qt6_add_resources(quicknanobrowser "resources" + PREFIX + "/" + FILES + ${resources_resource_files} +) +set_source_files_properties("icons/3rdparty/go-next.png" + PROPERTIES QT_RESOURCE_ALIAS "go-next.png" +) +set_source_files_properties("icons/3rdparty/go-previous.png" + PROPERTIES QT_RESOURCE_ALIAS "go-previous.png" +) +set_source_files_properties("icons/3rdparty/process-stop.png" + PROPERTIES QT_RESOURCE_ALIAS "process-stop.png" +) +set_source_files_properties("icons/3rdparty/view-refresh.png" + PROPERTIES QT_RESOURCE_ALIAS "view-refresh.png" +) +set(resources1_resource_files + "icons/3rdparty/go-next.png" + "icons/3rdparty/go-previous.png" + "icons/3rdparty/process-stop.png" + "icons/3rdparty/view-refresh.png" +) + +qt6_add_resources(quicknanobrowser "resources1" + PREFIX + "/icons" + FILES + ${resources1_resource_files} +) + +if(TARGET Qt::Widgets) + target_link_libraries(quicknanobrowser PUBLIC + Qt::Widgets + ) +endif() + +install(TARGETS quicknanobrowser + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webengine/recipebrowser/CMakeLists.txt b/examples/webengine/recipebrowser/CMakeLists.txt new file mode 100644 index 000000000..7019227d9 --- /dev/null +++ b/examples/webengine/recipebrowser/CMakeLists.txt @@ -0,0 +1,143 @@ +cmake_minimum_required(VERSION 3.18) +project(recipebrowser LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/recipebrowser") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Quick) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS QuickControls2) +find_package(Qt6 COMPONENTS WebEngineQuick) + +qt_add_executable(recipebrowser + main.cpp +) +set_target_properties(recipebrowser PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(recipebrowser PUBLIC + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick + Qt::QuickControls2 + Qt::WebEngineQucik +) + + +# Resources: +set_source_files_properties("resources/pages/assets/3rdparty/markdown.css" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/assets/3rdparty/marked.js" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/assets/custom.css" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/assets/custom.js" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/burger.html" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/cupcakes.html" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/images/burger.jpg" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/images/cupcakes.jpg" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/images/pasta.jpg" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/images/pizza.jpg" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/images/skewers.jpg" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/images/soup.jpg" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/images/steak.jpg" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/pasta.html" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/pizza.html" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/skewers.html" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/soup.html" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/pages/steak.html" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/qml/RecipeList.qml" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set_source_files_properties("resources/qml/main.qml" + PROPERTIES QT_SKIP_QUICKCOMPILER 1 +) +set(resources_resource_files + "pages/assets/3rdparty/markdown.css" + "pages/assets/3rdparty/marked.js" + "pages/assets/custom.css" + "pages/assets/custom.js" + "pages/burger.html" + "pages/cupcakes.html" + "pages/images/burger.jpg" + "pages/images/cupcakes.jpg" + "pages/images/pasta.jpg" + "pages/images/pizza.jpg" + "pages/images/skewers.jpg" + "pages/images/soup.jpg" + "pages/images/steak.jpg" + "pages/pasta.html" + "pages/pizza.html" + "pages/skewers.html" + "pages/soup.html" + "pages/steak.html" + "qml/RecipeList.qml" + "qml/main.qml" +) + +qt6_add_resources(recipebrowser "resources" + PREFIX + "/" + BASE + "resources" + FILES + ${resources_resource_files} +) + +if(CMAKE_CROSSCOMPILING AND (LINUX OR QNX OR posix)) + target_compile_definitions(recipebrowser PUBLIC + QTWEBENGINE_RECIPE_BROWSER_EMBEDDED + ) +endif() + +install(TARGETS recipebrowser + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webengine/webengineaction/CMakeLists.txt b/examples/webengine/webengineaction/CMakeLists.txt new file mode 100644 index 000000000..fce2f0b07 --- /dev/null +++ b/examples/webengine/webengineaction/CMakeLists.txt @@ -0,0 +1,50 @@ +cmake_minimum_required(VERSION 3.18) +project(webengineaction LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/webengineaction") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineQuick) + +qt_add_executable(webengineaction + main.cpp +) +set_target_properties(webengineaction PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(webengineaction PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineQuick +) + + +# Resources: +set(qml_resource_files + "main.qml" +) + +qt6_add_resources(webengineaction "qml" + PREFIX + "/" + FILES + ${qml_resource_files} +) + +install(TARGETS webengineaction + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/CMakeLists.txt b/examples/webenginewidgets/CMakeLists.txt new file mode 100644 index 000000000..651a01344 --- /dev/null +++ b/examples/webenginewidgets/CMakeLists.txt @@ -0,0 +1,21 @@ +add_subdirectory(minimal) +add_subdirectory(contentmanipulation) +add_subdirectory(cookiebrowser) +add_subdirectory(notifications) +add_subdirectory(simplebrowser) +add_subdirectory(stylesheetbrowser) +add_subdirectory(videoplayer) +add_subdirectory(webui) +if(QT_FEATURE_webengine_geolocation) + add_subdirectory(maps) +endif() +if(QT_FEATURE_webengine_webchannel) + add_subdirectory(markdowneditor) +endif() +if(QT_FEATURE_webengine_printing_and_pdf) + add_subdirectory(printme) + add_subdirectory(html2pdf) +endif() +if(QT_FEATURE_webengine_spellchecker AND NOT CMAKE_CROSSCOMPILING AND NOT QT_FEATURE_webengine_native_spellchecker) + add_subdirectory(spellchecker) +endif() diff --git a/examples/webenginewidgets/contentmanipulation/CMakeLists.txt b/examples/webenginewidgets/contentmanipulation/CMakeLists.txt new file mode 100644 index 000000000..13986389d --- /dev/null +++ b/examples/webenginewidgets/contentmanipulation/CMakeLists.txt @@ -0,0 +1,51 @@ +cmake_minimum_required(VERSION 3.18) +project(contentmanipulation LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/contentmanipulation") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(contentmanipulation + main.cpp + mainwindow.cpp mainwindow.h +) +set_target_properties(contentmanipulation PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(contentmanipulation PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + + +# Resources: +set(jquery_resource_files + "jquery.min.js" +) + +qt6_add_resources(contentmanipulation "jquery" + PREFIX + "/" + FILES + ${jquery_resource_files} +) + +install(TARGETS contentmanipulation + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/cookiebrowser/CMakeLists.txt b/examples/webenginewidgets/cookiebrowser/CMakeLists.txt new file mode 100644 index 000000000..51c936213 --- /dev/null +++ b/examples/webenginewidgets/cookiebrowser/CMakeLists.txt @@ -0,0 +1,56 @@ +cmake_minimum_required(VERSION 3.18) +project(cookiebrowser LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/cookiebrowser") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(cookiebrowser + cookiedialog.ui + cookiewidget.ui + main.cpp + mainwindow.cpp mainwindow.h mainwindow.ui +) +set_target_properties(cookiebrowser PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(cookiebrowser PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + + +# Resources: +set_source_files_properties("3rdparty/view-refresh.png" + PROPERTIES QT_RESOURCE_ALIAS "view-refresh.png" +) +set(cookiebrowser_resource_files + "3rdparty/view-refresh.png" +) + +qt6_add_resources(cookiebrowser "cookiebrowser" + PREFIX + "/" + FILES + ${cookiebrowser_resource_files} +) + +install(TARGETS cookiebrowser + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/html2pdf/CMakeLists.txt b/examples/webenginewidgets/html2pdf/CMakeLists.txt new file mode 100644 index 000000000..617a03e3b --- /dev/null +++ b/examples/webenginewidgets/html2pdf/CMakeLists.txt @@ -0,0 +1,37 @@ +cmake_minimum_required(VERSION 3.18) +project(html2pdf LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/html2pdf") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(html2pdf + html2pdf.cpp +) +set_target_properties(html2pdf PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(html2pdf PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + +install(TARGETS html2pdf + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/maps/CMakeLists.txt b/examples/webenginewidgets/maps/CMakeLists.txt new file mode 100644 index 000000000..8cb70abe1 --- /dev/null +++ b/examples/webenginewidgets/maps/CMakeLists.txt @@ -0,0 +1,38 @@ +cmake_minimum_required(VERSION 3.18) +project(maps LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/maps") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(maps + main.cpp + mainwindow.cpp mainwindow.h +) +set_target_properties(maps PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(maps PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + +install(TARGETS maps + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/markdowneditor/CMakeLists.txt b/examples/webenginewidgets/markdowneditor/CMakeLists.txt new file mode 100644 index 000000000..458f8200f --- /dev/null +++ b/examples/webenginewidgets/markdowneditor/CMakeLists.txt @@ -0,0 +1,60 @@ +cmake_minimum_required(VERSION 3.18) +project(markdowneditor LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/markdowneditor") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) +find_package(Qt6 COMPONENTS WebChannel) + +qt_add_executable(markdowneditor + document.cpp document.h + main.cpp + mainwindow.cpp mainwindow.h mainwindow.ui + previewpage.cpp previewpage.h +) +set_target_properties(markdowneditor PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(markdowneditor PUBLIC + Qt::Core + Qt::Gui + Qt::WebChannel + Qt::WebEngineWidgets +) + + +# Resources: +set(markdowneditor_resource_files + "3rdparty/markdown.css" + "3rdparty/marked.js" + "default.md" + "index.html" +) + +qt6_add_resources(markdowneditor "markdowneditor" + PREFIX + "/" + BASE + "resources" + FILES + ${markdowneditor_resource_files} +) + +install(TARGETS markdowneditor + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/minimal/CMakeLists.txt b/examples/webenginewidgets/minimal/CMakeLists.txt new file mode 100644 index 000000000..5edee428f --- /dev/null +++ b/examples/webenginewidgets/minimal/CMakeLists.txt @@ -0,0 +1,37 @@ +cmake_minimum_required(VERSION 3.18) +project(minimal LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/minimal-widgets") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(minimal-widgets + main.cpp +) +set_target_properties(minimal-widgets PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(minimal-widgets PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + +install(TARGETS minimal-widgets + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/notifications/CMakeLists.txt b/examples/webenginewidgets/notifications/CMakeLists.txt new file mode 100644 index 000000000..6a201e7e7 --- /dev/null +++ b/examples/webenginewidgets/notifications/CMakeLists.txt @@ -0,0 +1,54 @@ +cmake_minimum_required(VERSION 3.18) +project(notifications LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/notifications") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(notifications + main.cpp + notificationpopup.h +) +set_target_properties(notifications PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(notifications PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + + +# Resources: +set(data_resource_files + "icon.png" + "index.html" +) + +qt6_add_resources(notifications "data" + PREFIX + "/" + BASE + "data" + FILES + ${data_resource_files} +) + +install(TARGETS notifications + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/printme/CMakeLists.txt b/examples/webenginewidgets/printme/CMakeLists.txt new file mode 100644 index 000000000..95af70461 --- /dev/null +++ b/examples/webenginewidgets/printme/CMakeLists.txt @@ -0,0 +1,57 @@ +cmake_minimum_required(VERSION 3.18) +project(printme LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/printme") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) +find_package(Qt6 COMPONENTS PrintSupport) + +qt_add_executable(printme + main.cpp + printhandler.cpp printhandler.h +) +set_target_properties(printme PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(printme PUBLIC + Qt::Core + Qt::Gui + Qt::PrintSupport + Qt::WebEngineWidgets +) + + +# Resources: +set(data_resource_files + "icon.svg" + "index.html" + "style.css" +) + +qt6_add_resources(printme "data" + PREFIX + "/" + BASE + "data" + FILES + ${data_resource_files} +) + +install(TARGETS printme + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/simplebrowser/CMakeLists.txt b/examples/webenginewidgets/simplebrowser/CMakeLists.txt new file mode 100644 index 000000000..47583413c --- /dev/null +++ b/examples/webenginewidgets/simplebrowser/CMakeLists.txt @@ -0,0 +1,106 @@ +cmake_minimum_required(VERSION 3.18) +project(simplebrowser LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/simplebrowser") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(simplebrowser + browser.cpp browser.h + browserwindow.cpp browserwindow.h + certificateerrordialog.ui + downloadmanagerwidget.cpp downloadmanagerwidget.h downloadmanagerwidget.ui + downloadwidget.cpp downloadwidget.h downloadwidget.ui + main.cpp + passworddialog.ui + tabwidget.cpp tabwidget.h + webpage.cpp webpage.h + webpopupwindow.cpp webpopupwindow.h + webview.cpp webview.h +) +set_target_properties(simplebrowser PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(simplebrowser PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + + +# Resources: +set(simplebrowser_resource_files + "AppLogoColor.png" + "ninja.png" +) + +qt6_add_resources(simplebrowser "simplebrowser" + PREFIX + "/" + BASE + "data" + FILES + ${simplebrowser_resource_files} +) +set_source_files_properties("data/3rdparty/dialog-error.png" + PROPERTIES QT_RESOURCE_ALIAS "dialog-error.png" +) +set_source_files_properties("data/3rdparty/edit-clear.png" + PROPERTIES QT_RESOURCE_ALIAS "edit-clear.png" +) +set_source_files_properties("data/3rdparty/go-bottom.png" + PROPERTIES QT_RESOURCE_ALIAS "go-bottom.png" +) +set_source_files_properties("data/3rdparty/go-next.png" + PROPERTIES QT_RESOURCE_ALIAS "go-next.png" +) +set_source_files_properties("data/3rdparty/go-previous.png" + PROPERTIES QT_RESOURCE_ALIAS "go-previous.png" +) +set_source_files_properties("data/3rdparty/process-stop.png" + PROPERTIES QT_RESOURCE_ALIAS "process-stop.png" +) +set_source_files_properties("data/3rdparty/text-html.png" + PROPERTIES QT_RESOURCE_ALIAS "text-html.png" +) +set_source_files_properties("data/3rdparty/view-refresh.png" + PROPERTIES QT_RESOURCE_ALIAS "view-refresh.png" +) +set(simplebrowser1_resource_files + "3rdparty/dialog-error.png" + "3rdparty/edit-clear.png" + "3rdparty/go-bottom.png" + "3rdparty/go-next.png" + "3rdparty/go-previous.png" + "3rdparty/process-stop.png" + "3rdparty/text-html.png" + "3rdparty/view-refresh.png" +) + +qt6_add_resources(simplebrowser "simplebrowser1" + PREFIX + "/" + BASE + "data" + FILES + ${simplebrowser1_resource_files} +) + +install(TARGETS simplebrowser + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/spellchecker/CMakeLists.txt b/examples/webenginewidgets/spellchecker/CMakeLists.txt new file mode 100644 index 000000000..a5e51ad53 --- /dev/null +++ b/examples/webenginewidgets/spellchecker/CMakeLists.txt @@ -0,0 +1,55 @@ +cmake_minimum_required(VERSION 3.18) +project(spellchecker LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/spellchecker") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(spellchecker + main.cpp + webview.cpp webview.h +) +set_target_properties(spellchecker PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(spellchecker PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + + +# Resources: +set(spellchecker_resource_files + "icon.svg" + "index.html" + "style.css" +) + +qt6_add_resources(spellchecker "spellchecker" + PREFIX + "/" + BASE + "data" + FILES + ${spellchecker_resource_files} +) + +install(TARGETS spellchecker + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/stylesheetbrowser/CMakeLists.txt b/examples/webenginewidgets/stylesheetbrowser/CMakeLists.txt new file mode 100644 index 000000000..774854ade --- /dev/null +++ b/examples/webenginewidgets/stylesheetbrowser/CMakeLists.txt @@ -0,0 +1,55 @@ +cmake_minimum_required(VERSION 3.18) +project(stylesheetbrowser LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/stylesheetbrowser") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(stylesheetbrowser + main.cpp + mainwindow.cpp mainwindow.h mainwindow.ui + stylesheetdialog.cpp stylesheetdialog.h stylesheetdialog.ui +) +set_target_properties(stylesheetbrowser PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(stylesheetbrowser PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + + +# Resources: +set_source_files_properties("3rdparty/view-refresh.png" + PROPERTIES QT_RESOURCE_ALIAS "view-refresh.png" +) +set(stylesheetbrowser_resource_files + "3rdparty/view-refresh.png" +) + +qt6_add_resources(stylesheetbrowser "stylesheetbrowser" + PREFIX + "/" + FILES + ${stylesheetbrowser_resource_files} +) + +install(TARGETS stylesheetbrowser + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/videoplayer/CMakeLists.txt b/examples/webenginewidgets/videoplayer/CMakeLists.txt new file mode 100644 index 000000000..7e49beb4b --- /dev/null +++ b/examples/webenginewidgets/videoplayer/CMakeLists.txt @@ -0,0 +1,55 @@ +cmake_minimum_required(VERSION 3.18) +project(videoplayer LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/videoplayer") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(videoplayer + fullscreennotification.cpp fullscreennotification.h + fullscreenwindow.cpp fullscreenwindow.h + main.cpp + mainwindow.cpp mainwindow.h +) +set_target_properties(videoplayer PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(videoplayer PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + + +# Resources: +set(videoplayer_resource_files + "index.html" +) + +qt6_add_resources(videoplayer "videoplayer" + PREFIX + "/" + BASE + "data" + FILES + ${videoplayer_resource_files} +) + +install(TARGETS videoplayer + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/webenginewidgets/webenginewidgets.pro b/examples/webenginewidgets/webenginewidgets.pro index deb42a8cd..f783fc681 100644 --- a/examples/webenginewidgets/webenginewidgets.pro +++ b/examples/webenginewidgets/webenginewidgets.pro @@ -1,4 +1,3 @@ -include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri) # workaround for QTBUG-68093 QT_FOR_CONFIG += webenginecore webenginecore-private TEMPLATE=subdirs @@ -20,9 +19,9 @@ qtConfig(webengine-printing-and-pdf) { SUBDIRS += printme html2pdf } -qtConfig(webengine-spellchecker):!qtConfig(webengine-native-spellchecker):!cross_compile { - SUBDIRS += spellchecker -} else { - message("Spellcheck example will not be built because it depends on usage of Hunspell dictionaries.") -} +#qtConfig(webengine-spellchecker):!qtConfig(webengine-native-spellchecker):!cross_compile { +# SUBDIRS += spellchecker +#} else { +# message("Spellcheck example will not be built because it depends on usage of Hunspell dictionaries.") +#} diff --git a/examples/webenginewidgets/webui/CMakeLists.txt b/examples/webenginewidgets/webui/CMakeLists.txt new file mode 100644 index 000000000..61c271159 --- /dev/null +++ b/examples/webenginewidgets/webui/CMakeLists.txt @@ -0,0 +1,51 @@ +cmake_minimum_required(VERSION 3.18) +project(webui LANGUAGES CXX) + +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_AUTOUIC ON) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "examples") +endif() + +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/webui") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS WebEngineWidgets) + +qt_add_executable(webui + main.cpp + webuihandler.cpp webuihandler.h +) +set_target_properties(webui PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(webui PUBLIC + Qt::Core + Qt::Gui + Qt::WebEngineWidgets +) + + +# Resources: +set(webui_resource_files + "about.html" +) + +qt6_add_resources(webui "webui" + PREFIX + "/" + FILES + ${webui_resource_files} +) + +install(TARGETS webui + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) |