diff options
Diffstat (limited to 'examples/ivicore/qface-tutorial')
32 files changed, 1654 insertions, 0 deletions
diff --git a/examples/ivicore/qface-tutorial/CMakeLists.txt b/examples/ivicore/qface-tutorial/CMakeLists.txt new file mode 100644 index 0000000..f1f014f --- /dev/null +++ b/examples/ivicore/qface-tutorial/CMakeLists.txt @@ -0,0 +1,11 @@ +# Generated from qface-tutorial.pro. + +add_subdirectory(instrument-cluster) +add_subdirectory(chapter1-basics) +add_subdirectory(chapter2-enums-structs) +add_subdirectory(chapter3-simulation-backend) +add_subdirectory(chapter4-simulation-behavior) +add_subdirectory(chapter5-ipc) +if(TARGET Qt::DBus) + add_subdirectory(chapter6-own-backend) +endif() diff --git a/examples/ivicore/qface-tutorial/chapter1-basics/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter1-basics/CMakeLists.txt new file mode 100644 index 0000000..154a126 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter1-basics/CMakeLists.txt @@ -0,0 +1,4 @@ +# Generated from chapter1-basics.pro. + +add_subdirectory(instrument-cluster) +add_subdirectory(frontend) diff --git a/examples/ivicore/qface-tutorial/chapter1-basics/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter1-basics/frontend/CMakeLists.txt new file mode 100644 index 0000000..fde5846 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter1-basics/frontend/CMakeLists.txt @@ -0,0 +1,46 @@ +# Generated from frontend.pro. + +cmake_minimum_required(VERSION 3.14) +project(QtIviInstrumentCluster 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}/ivicore/qface-tutorial/chapter1-basics") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +) +set_target_properties(QtIviInstrumentCluster PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_compile_definitions(QtIviInstrumentCluster PUBLIC + QT_BUILD_EXAMPLE_IVI_INSTRUMENTCLUSTER_LIB +) + +target_link_libraries(QtIviInstrumentCluster PUBLIC + Qt::Core + Qt::Gui + Qt::IviCore + Qt::IviCorePrivate + Qt::Qml + Qt::Quick +) + +install(TARGETS QtIviInstrumentCluster + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter1-basics/instrument-cluster/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter1-basics/instrument-cluster/CMakeLists.txt new file mode 100644 index 0000000..3c3e845 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter1-basics/instrument-cluster/CMakeLists.txt @@ -0,0 +1,140 @@ +# Generated from instrument-cluster.pro. + +cmake_minimum_required(VERSION 3.14) +project(chapter1-basics 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}/ivicore/qface-tutorial/chapter1-basics") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +qt_add_executable(chapter1-basics + main.cpp +) +set_target_properties(chapter1-basics PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE FALSE +) +target_include_directories(chapter1-basics PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(chapter1-basics PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + + +# Resources: +set(app_resource_files + "Cluster.qml" + "Dial.qml" + "Fuel.qml" + "Label.qml" + "LeftDial.qml" + "RightDial.qml" + "Top.qml" +) + +qt6_add_resources(chapter1-basics "app" + PREFIX + "/" + FILES + ${app_resource_files} +) +set_source_files_properties("../../images/+--.png" + PROPERTIES QT_RESOURCE_ALIAS "+--.png" +) +set_source_files_properties("../../images/P-R-N-D.png" + PROPERTIES QT_RESOURCE_ALIAS "P-R-N-D.png" +) +set_source_files_properties("../../images/dial_cursor.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor.png" +) +set_source_files_properties("../../images/dial_cursor_right.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor_right.png" +) +set_source_files_properties("../../images/dial_fill_color.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color.png" +) +set_source_files_properties("../../images/dial_fill_color_left.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color_left.png" +) +set_source_files_properties("../../images/dial_pattern.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_pattern.png" +) +set_source_files_properties("../../images/fuel.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel.png" +) +set_source_files_properties("../../images/fuel_level.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel_level.png" +) +set_source_files_properties("../../images/fuelsymbol_orange.png" + PROPERTIES QT_RESOURCE_ALIAS "fuelsymbol_orange.png" +) +set_source_files_properties("../../images/left_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "left_dial.png" +) +set_source_files_properties("../../images/mask_overlay.png" + PROPERTIES QT_RESOURCE_ALIAS "mask_overlay.png" +) +set_source_files_properties("../../images/middle-bkg.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-bkg.png" +) +set_source_files_properties("../../images/middle-circle.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-circle.png" +) +set_source_files_properties("../../images/right_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "right_dial.png" +) +set_source_files_properties("../../images/top_bar.png" + PROPERTIES QT_RESOURCE_ALIAS "top_bar.png" +) +set(images_resource_files + "+--.png" + "P-R-N-D.png" + "dial_cursor.png" + "dial_cursor_right.png" + "dial_fill_color.png" + "dial_fill_color_left.png" + "dial_pattern.png" + "fuel.png" + "fuel_level.png" + "fuelsymbol_orange.png" + "left_dial.png" + "mask_overlay.png" + "middle-bkg.png" + "middle-circle.png" + "right_dial.png" + "top_bar.png" +) + +qt6_add_resources(chapter1-basics "images" + PREFIX + "/images" + BASE + "../../images" + FILES + ${images_resource_files} +) + +install(TARGETS chapter1-basics + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter2-enums-structs/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter2-enums-structs/CMakeLists.txt new file mode 100644 index 0000000..d305589 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter2-enums-structs/CMakeLists.txt @@ -0,0 +1,4 @@ +# Generated from chapter2-enums-structs.pro. + +add_subdirectory(instrument-cluster) +add_subdirectory(frontend) diff --git a/examples/ivicore/qface-tutorial/chapter2-enums-structs/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter2-enums-structs/frontend/CMakeLists.txt new file mode 100644 index 0000000..8ca17d5 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter2-enums-structs/frontend/CMakeLists.txt @@ -0,0 +1,46 @@ +# Generated from frontend.pro. + +cmake_minimum_required(VERSION 3.14) +project(QtIviInstrumentCluster 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}/ivicore/qface-tutorial/chapter2-enums-structs") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +) +set_target_properties(QtIviInstrumentCluster PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_compile_definitions(QtIviInstrumentCluster PUBLIC + QT_BUILD_EXAMPLE_IVI_INSTRUMENTCLUSTER_LIB +) + +target_link_libraries(QtIviInstrumentCluster PUBLIC + Qt::Core + Qt::Gui + Qt::IviCore + Qt::IviCorePrivate + Qt::Qml + Qt::Quick +) + +install(TARGETS QtIviInstrumentCluster + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter2-enums-structs/instrument-cluster/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter2-enums-structs/instrument-cluster/CMakeLists.txt new file mode 100644 index 0000000..154a9aa --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter2-enums-structs/instrument-cluster/CMakeLists.txt @@ -0,0 +1,140 @@ +# Generated from instrument-cluster.pro. + +cmake_minimum_required(VERSION 3.14) +project(chapter2-enums-structs 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}/ivicore/qface-tutorial/chapter2-enums-structs") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +qt_add_executable(chapter2-enums-structs + main.cpp +) +set_target_properties(chapter2-enums-structs PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE FALSE +) +target_include_directories(chapter2-enums-structs PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(chapter2-enums-structs PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + + +# Resources: +set(app_resource_files + "Cluster.qml" + "Dial.qml" + "Fuel.qml" + "Label.qml" + "LeftDial.qml" + "RightDial.qml" + "Top.qml" +) + +qt6_add_resources(chapter2-enums-structs "app" + PREFIX + "/" + FILES + ${app_resource_files} +) +set_source_files_properties("../../images/+--.png" + PROPERTIES QT_RESOURCE_ALIAS "+--.png" +) +set_source_files_properties("../../images/P-R-N-D.png" + PROPERTIES QT_RESOURCE_ALIAS "P-R-N-D.png" +) +set_source_files_properties("../../images/dial_cursor.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor.png" +) +set_source_files_properties("../../images/dial_cursor_right.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor_right.png" +) +set_source_files_properties("../../images/dial_fill_color.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color.png" +) +set_source_files_properties("../../images/dial_fill_color_left.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color_left.png" +) +set_source_files_properties("../../images/dial_pattern.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_pattern.png" +) +set_source_files_properties("../../images/fuel.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel.png" +) +set_source_files_properties("../../images/fuel_level.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel_level.png" +) +set_source_files_properties("../../images/fuelsymbol_orange.png" + PROPERTIES QT_RESOURCE_ALIAS "fuelsymbol_orange.png" +) +set_source_files_properties("../../images/left_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "left_dial.png" +) +set_source_files_properties("../../images/mask_overlay.png" + PROPERTIES QT_RESOURCE_ALIAS "mask_overlay.png" +) +set_source_files_properties("../../images/middle-bkg.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-bkg.png" +) +set_source_files_properties("../../images/middle-circle.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-circle.png" +) +set_source_files_properties("../../images/right_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "right_dial.png" +) +set_source_files_properties("../../images/top_bar.png" + PROPERTIES QT_RESOURCE_ALIAS "top_bar.png" +) +set(images_resource_files + "+--.png" + "P-R-N-D.png" + "dial_cursor.png" + "dial_cursor_right.png" + "dial_fill_color.png" + "dial_fill_color_left.png" + "dial_pattern.png" + "fuel.png" + "fuel_level.png" + "fuelsymbol_orange.png" + "left_dial.png" + "mask_overlay.png" + "middle-bkg.png" + "middle-circle.png" + "right_dial.png" + "top_bar.png" +) + +qt6_add_resources(chapter2-enums-structs "images" + PREFIX + "/images" + BASE + "../../images" + FILES + ${images_resource_files} +) + +install(TARGETS chapter2-enums-structs + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/CMakeLists.txt new file mode 100644 index 0000000..7be44e4 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/CMakeLists.txt @@ -0,0 +1,6 @@ +# Generated from chapter3-simulation-backend.pro. + +add_subdirectory(instrument-cluster) +add_subdirectory(frontend) +add_subdirectory(backend_simulator) +add_subdirectory(imports) diff --git a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/backend_simulator/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/backend_simulator/CMakeLists.txt new file mode 100644 index 0000000..9927170 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/backend_simulator/CMakeLists.txt @@ -0,0 +1,42 @@ +# Generated from backend_simulator.pro. + +cmake_minimum_required(VERSION 3.14) +project(instrumentcluster_simulation 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}/ivicore/qface-tutorial/chapter3-simulation-backend") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) + +) +set_target_properties(instrumentcluster_simulation PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_include_directories(instrumentcluster_simulation PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(instrumentcluster_simulation PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::IviCore +) + +install(TARGETS instrumentcluster_simulation + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/frontend/CMakeLists.txt new file mode 100644 index 0000000..dc2a4c6 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/frontend/CMakeLists.txt @@ -0,0 +1,46 @@ +# Generated from frontend.pro. + +cmake_minimum_required(VERSION 3.14) +project(QtIviInstrumentCluster 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}/ivicore/qface-tutorial/chapter3-simulation-backend") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +) +set_target_properties(QtIviInstrumentCluster PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_compile_definitions(QtIviInstrumentCluster PUBLIC + QT_BUILD_EXAMPLE_IVI_INSTRUMENTCLUSTER_LIB +) + +target_link_libraries(QtIviInstrumentCluster PUBLIC + Qt::Core + Qt::Gui + Qt::IviCore + Qt::IviCorePrivate + Qt::Qml + Qt::Quick +) + +install(TARGETS QtIviInstrumentCluster + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/imports/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/imports/CMakeLists.txt new file mode 100644 index 0000000..931e18d --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/imports/CMakeLists.txt @@ -0,0 +1,42 @@ +# Generated from imports.pro. + +cmake_minimum_required(VERSION 3.14) +project(imports 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}/ivicore/qface-tutorial/chapter3-simulation-backend/imports") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) + +) +set_target_properties(imports PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_include_directories(imports PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(imports PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::IviCore +) + +install(TARGETS imports + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/instrument-cluster/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/instrument-cluster/CMakeLists.txt new file mode 100644 index 0000000..b9b4e7e --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/instrument-cluster/CMakeLists.txt @@ -0,0 +1,140 @@ +# Generated from instrument-cluster.pro. + +cmake_minimum_required(VERSION 3.14) +project(chapter3-simulation-backend 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}/ivicore/qface-tutorial/chapter3-simulation-backend") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +qt_add_executable(chapter3-simulation-backend + main.cpp +) +set_target_properties(chapter3-simulation-backend PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE FALSE +) +target_include_directories(chapter3-simulation-backend PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(chapter3-simulation-backend PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + + +# Resources: +set(app_resource_files + "Cluster.qml" + "Dial.qml" + "Fuel.qml" + "Label.qml" + "LeftDial.qml" + "RightDial.qml" + "Top.qml" +) + +qt6_add_resources(chapter3-simulation-backend "app" + PREFIX + "/" + FILES + ${app_resource_files} +) +set_source_files_properties("../../images/+--.png" + PROPERTIES QT_RESOURCE_ALIAS "+--.png" +) +set_source_files_properties("../../images/P-R-N-D.png" + PROPERTIES QT_RESOURCE_ALIAS "P-R-N-D.png" +) +set_source_files_properties("../../images/dial_cursor.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor.png" +) +set_source_files_properties("../../images/dial_cursor_right.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor_right.png" +) +set_source_files_properties("../../images/dial_fill_color.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color.png" +) +set_source_files_properties("../../images/dial_fill_color_left.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color_left.png" +) +set_source_files_properties("../../images/dial_pattern.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_pattern.png" +) +set_source_files_properties("../../images/fuel.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel.png" +) +set_source_files_properties("../../images/fuel_level.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel_level.png" +) +set_source_files_properties("../../images/fuelsymbol_orange.png" + PROPERTIES QT_RESOURCE_ALIAS "fuelsymbol_orange.png" +) +set_source_files_properties("../../images/left_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "left_dial.png" +) +set_source_files_properties("../../images/mask_overlay.png" + PROPERTIES QT_RESOURCE_ALIAS "mask_overlay.png" +) +set_source_files_properties("../../images/middle-bkg.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-bkg.png" +) +set_source_files_properties("../../images/middle-circle.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-circle.png" +) +set_source_files_properties("../../images/right_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "right_dial.png" +) +set_source_files_properties("../../images/top_bar.png" + PROPERTIES QT_RESOURCE_ALIAS "top_bar.png" +) +set(images_resource_files + "+--.png" + "P-R-N-D.png" + "dial_cursor.png" + "dial_cursor_right.png" + "dial_fill_color.png" + "dial_fill_color_left.png" + "dial_pattern.png" + "fuel.png" + "fuel_level.png" + "fuelsymbol_orange.png" + "left_dial.png" + "mask_overlay.png" + "middle-bkg.png" + "middle-circle.png" + "right_dial.png" + "top_bar.png" +) + +qt6_add_resources(chapter3-simulation-backend "images" + PREFIX + "/images" + BASE + "../../images" + FILES + ${images_resource_files} +) + +install(TARGETS chapter3-simulation-backend + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/CMakeLists.txt new file mode 100644 index 0000000..bb2860f --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/CMakeLists.txt @@ -0,0 +1,6 @@ +# Generated from chapter4-simulation-behavior.pro. + +add_subdirectory(instrument-cluster) +add_subdirectory(frontend) +add_subdirectory(backend_simulator) +add_subdirectory(imports) diff --git a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/backend_simulator/CMakeLists.gen.txt b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/backend_simulator/CMakeLists.gen.txt new file mode 100644 index 0000000..f88a4cc --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/backend_simulator/CMakeLists.gen.txt @@ -0,0 +1,2 @@ +# Generated from backend_simulator.pro. + diff --git a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/frontend/CMakeLists.txt new file mode 100644 index 0000000..6ee4d49 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/frontend/CMakeLists.txt @@ -0,0 +1,46 @@ +# Generated from frontend.pro. + +cmake_minimum_required(VERSION 3.14) +project(QtIviInstrumentCluster 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}/ivicore/qface-tutorial/chapter4-simulation-behavior") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +) +set_target_properties(QtIviInstrumentCluster PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_compile_definitions(QtIviInstrumentCluster PUBLIC + QT_BUILD_EXAMPLE_IVI_INSTRUMENTCLUSTER_LIB +) + +target_link_libraries(QtIviInstrumentCluster PUBLIC + Qt::Core + Qt::Gui + Qt::IviCore + Qt::IviCorePrivate + Qt::Qml + Qt::Quick +) + +install(TARGETS QtIviInstrumentCluster + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/imports/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/imports/CMakeLists.txt new file mode 100644 index 0000000..780e019 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/imports/CMakeLists.txt @@ -0,0 +1,42 @@ +# Generated from imports.pro. + +cmake_minimum_required(VERSION 3.14) +project(imports 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}/ivicore/qface-tutorial/chapter4-simulation-behavior/imports") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) + +) +set_target_properties(imports PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_include_directories(imports PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(imports PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::IviCore +) + +install(TARGETS imports + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/instrument-cluster/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/instrument-cluster/CMakeLists.txt new file mode 100644 index 0000000..2d1914e --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/instrument-cluster/CMakeLists.txt @@ -0,0 +1,140 @@ +# Generated from instrument-cluster.pro. + +cmake_minimum_required(VERSION 3.14) +project(chapter4-simulation-behavior 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}/ivicore/qface-tutorial/chapter4-simulation-behavior") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +qt_add_executable(chapter4-simulation-behavior + main.cpp +) +set_target_properties(chapter4-simulation-behavior PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE FALSE +) +target_include_directories(chapter4-simulation-behavior PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(chapter4-simulation-behavior PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + + +# Resources: +set(app_resource_files + "Cluster.qml" + "Dial.qml" + "Fuel.qml" + "Label.qml" + "LeftDial.qml" + "RightDial.qml" + "Top.qml" +) + +qt6_add_resources(chapter4-simulation-behavior "app" + PREFIX + "/" + FILES + ${app_resource_files} +) +set_source_files_properties("../../images/+--.png" + PROPERTIES QT_RESOURCE_ALIAS "+--.png" +) +set_source_files_properties("../../images/P-R-N-D.png" + PROPERTIES QT_RESOURCE_ALIAS "P-R-N-D.png" +) +set_source_files_properties("../../images/dial_cursor.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor.png" +) +set_source_files_properties("../../images/dial_cursor_right.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor_right.png" +) +set_source_files_properties("../../images/dial_fill_color.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color.png" +) +set_source_files_properties("../../images/dial_fill_color_left.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color_left.png" +) +set_source_files_properties("../../images/dial_pattern.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_pattern.png" +) +set_source_files_properties("../../images/fuel.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel.png" +) +set_source_files_properties("../../images/fuel_level.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel_level.png" +) +set_source_files_properties("../../images/fuelsymbol_orange.png" + PROPERTIES QT_RESOURCE_ALIAS "fuelsymbol_orange.png" +) +set_source_files_properties("../../images/left_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "left_dial.png" +) +set_source_files_properties("../../images/mask_overlay.png" + PROPERTIES QT_RESOURCE_ALIAS "mask_overlay.png" +) +set_source_files_properties("../../images/middle-bkg.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-bkg.png" +) +set_source_files_properties("../../images/middle-circle.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-circle.png" +) +set_source_files_properties("../../images/right_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "right_dial.png" +) +set_source_files_properties("../../images/top_bar.png" + PROPERTIES QT_RESOURCE_ALIAS "top_bar.png" +) +set(images_resource_files + "+--.png" + "P-R-N-D.png" + "dial_cursor.png" + "dial_cursor_right.png" + "dial_fill_color.png" + "dial_fill_color_left.png" + "dial_pattern.png" + "fuel.png" + "fuel_level.png" + "fuelsymbol_orange.png" + "left_dial.png" + "mask_overlay.png" + "middle-bkg.png" + "middle-circle.png" + "right_dial.png" + "top_bar.png" +) + +qt6_add_resources(chapter4-simulation-behavior "images" + PREFIX + "/images" + BASE + "../../images" + FILES + ${images_resource_files} +) + +install(TARGETS chapter4-simulation-behavior + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/CMakeLists.txt new file mode 100644 index 0000000..6bdba9a --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter5-ipc/CMakeLists.txt @@ -0,0 +1,8 @@ +# Generated from chapter5-ipc.pro. + +add_subdirectory(instrument-cluster) +add_subdirectory(frontend) +add_subdirectory(backend_simulator) +add_subdirectory(backend_qtro) +add_subdirectory(imports) +add_subdirectory(simulation_server) diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/backend_qtro/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/backend_qtro/CMakeLists.txt new file mode 100644 index 0000000..80de93e --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter5-ipc/backend_qtro/CMakeLists.txt @@ -0,0 +1,42 @@ +# Generated from backend_qtro.pro. + +cmake_minimum_required(VERSION 3.14) +project(instrumentcluster_qtro 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}/ivicore/qface-tutorial/chapter5-ipc") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) + +) +set_target_properties(instrumentcluster_qtro PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_include_directories(instrumentcluster_qtro PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(instrumentcluster_qtro PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::IviCore +) + +install(TARGETS instrumentcluster_qtro + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/backend_simulator/CMakeLists.gen.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/backend_simulator/CMakeLists.gen.txt new file mode 100644 index 0000000..f88a4cc --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter5-ipc/backend_simulator/CMakeLists.gen.txt @@ -0,0 +1,2 @@ +# Generated from backend_simulator.pro. + diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/frontend/CMakeLists.txt new file mode 100644 index 0000000..422563e --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter5-ipc/frontend/CMakeLists.txt @@ -0,0 +1,46 @@ +# Generated from frontend.pro. + +cmake_minimum_required(VERSION 3.14) +project(QtIviInstrumentCluster 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}/ivicore/qface-tutorial/chapter5-ipc") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +) +set_target_properties(QtIviInstrumentCluster PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_compile_definitions(QtIviInstrumentCluster PUBLIC + QT_BUILD_EXAMPLE_IVI_INSTRUMENTCLUSTER_LIB +) + +target_link_libraries(QtIviInstrumentCluster PUBLIC + Qt::Core + Qt::Gui + Qt::IviCore + Qt::IviCorePrivate + Qt::Qml + Qt::Quick +) + +install(TARGETS QtIviInstrumentCluster + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/imports/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/imports/CMakeLists.txt new file mode 100644 index 0000000..03b4cc9 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter5-ipc/imports/CMakeLists.txt @@ -0,0 +1,42 @@ +# Generated from imports.pro. + +cmake_minimum_required(VERSION 3.14) +project(imports 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}/ivicore/qface-tutorial/chapter5-ipc/imports") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) + +) +set_target_properties(imports PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_include_directories(imports PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(imports PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::IviCore +) + +install(TARGETS imports + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/instrument-cluster/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/instrument-cluster/CMakeLists.txt new file mode 100644 index 0000000..9582055 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter5-ipc/instrument-cluster/CMakeLists.txt @@ -0,0 +1,140 @@ +# Generated from instrument-cluster.pro. + +cmake_minimum_required(VERSION 3.14) +project(chapter5-ipc 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}/ivicore/qface-tutorial/chapter5-ipc") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +qt_add_executable(chapter5-ipc + main.cpp +) +set_target_properties(chapter5-ipc PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE FALSE +) +target_include_directories(chapter5-ipc PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(chapter5-ipc PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + + +# Resources: +set(app_resource_files + "Cluster.qml" + "Dial.qml" + "Fuel.qml" + "Label.qml" + "LeftDial.qml" + "RightDial.qml" + "Top.qml" +) + +qt6_add_resources(chapter5-ipc "app" + PREFIX + "/" + FILES + ${app_resource_files} +) +set_source_files_properties("../../images/+--.png" + PROPERTIES QT_RESOURCE_ALIAS "+--.png" +) +set_source_files_properties("../../images/P-R-N-D.png" + PROPERTIES QT_RESOURCE_ALIAS "P-R-N-D.png" +) +set_source_files_properties("../../images/dial_cursor.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor.png" +) +set_source_files_properties("../../images/dial_cursor_right.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor_right.png" +) +set_source_files_properties("../../images/dial_fill_color.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color.png" +) +set_source_files_properties("../../images/dial_fill_color_left.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color_left.png" +) +set_source_files_properties("../../images/dial_pattern.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_pattern.png" +) +set_source_files_properties("../../images/fuel.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel.png" +) +set_source_files_properties("../../images/fuel_level.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel_level.png" +) +set_source_files_properties("../../images/fuelsymbol_orange.png" + PROPERTIES QT_RESOURCE_ALIAS "fuelsymbol_orange.png" +) +set_source_files_properties("../../images/left_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "left_dial.png" +) +set_source_files_properties("../../images/mask_overlay.png" + PROPERTIES QT_RESOURCE_ALIAS "mask_overlay.png" +) +set_source_files_properties("../../images/middle-bkg.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-bkg.png" +) +set_source_files_properties("../../images/middle-circle.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-circle.png" +) +set_source_files_properties("../../images/right_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "right_dial.png" +) +set_source_files_properties("../../images/top_bar.png" + PROPERTIES QT_RESOURCE_ALIAS "top_bar.png" +) +set(images_resource_files + "+--.png" + "P-R-N-D.png" + "dial_cursor.png" + "dial_cursor_right.png" + "dial_fill_color.png" + "dial_fill_color_left.png" + "dial_pattern.png" + "fuel.png" + "fuel_level.png" + "fuelsymbol_orange.png" + "left_dial.png" + "mask_overlay.png" + "middle-bkg.png" + "middle-circle.png" + "right_dial.png" + "top_bar.png" +) + +qt6_add_resources(chapter5-ipc "images" + PREFIX + "/images" + BASE + "../../images" + FILES + ${images_resource_files} +) + +install(TARGETS chapter5-ipc + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/simulation_server/CMakeLists.gen.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/simulation_server/CMakeLists.gen.txt new file mode 100644 index 0000000..af9334a --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter5-ipc/simulation_server/CMakeLists.gen.txt @@ -0,0 +1,2 @@ +# Generated from simulation_server.pro. + diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/CMakeLists.txt new file mode 100644 index 0000000..da5ff5e --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/CMakeLists.txt @@ -0,0 +1,8 @@ +# Generated from chapter6-own-backend.pro. + +add_subdirectory(instrument-cluster) +add_subdirectory(frontend) +add_subdirectory(backend_simulator) +add_subdirectory(backend_dbus) +add_subdirectory(imports) +add_subdirectory(demo_server) diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_dbus/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_dbus/CMakeLists.txt new file mode 100644 index 0000000..e2b197c --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_dbus/CMakeLists.txt @@ -0,0 +1,50 @@ +# Generated from backend_dbus.pro. + +cmake_minimum_required(VERSION 3.14) +project(instrumentcluster_dbus 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}/ivicore/qface-tutorial/chapter6-own-backend") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) +find_package(Qt6 COMPONENTS DBus) + +qt_add_plugin(instrumentcluster_dbus) +target_sources(instrumentcluster_dbus PRIVATE + ../demo_server/dbus_conversion.h + instrumentclusterbackend.cpp instrumentclusterbackend.h + instrumentclusterplugin.cpp instrumentclusterplugin.h +) +set_target_properties(instrumentcluster_dbus PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_include_directories(instrumentcluster_dbus PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend + ../demo_server +) + +target_link_libraries(instrumentcluster_dbus PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::DBus + Qt::Gui + Qt::IviCore +) + +install(TARGETS instrumentcluster_dbus + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_simulator/CMakeLists.gen.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_simulator/CMakeLists.gen.txt new file mode 100644 index 0000000..f88a4cc --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_simulator/CMakeLists.gen.txt @@ -0,0 +1,2 @@ +# Generated from backend_simulator.pro. + diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/demo_server/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/demo_server/CMakeLists.txt new file mode 100644 index 0000000..f676668 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/demo_server/CMakeLists.txt @@ -0,0 +1,46 @@ +# Generated from demo_server.pro. + +cmake_minimum_required(VERSION 3.14) +project(chapter6-demo-server 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}/ivicore/qface-tutorial/chapter6-own-backend") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS IviCore) +find_package(Qt6 COMPONENTS DBus) + +qt_add_executable(chapter6-demo-server + dbus_conversion.h + instrumentcluster.cpp instrumentcluster.h + main.cpp +) +set_target_properties(chapter6-demo-server PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE FALSE +) +target_include_directories(chapter6-demo-server PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(chapter6-demo-server PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::DBus + Qt::IviCore +) + +install(TARGETS chapter6-demo-server + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/frontend/CMakeLists.txt new file mode 100644 index 0000000..6ca6d2a --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/frontend/CMakeLists.txt @@ -0,0 +1,46 @@ +# Generated from frontend.pro. + +cmake_minimum_required(VERSION 3.14) +project(QtIviInstrumentCluster 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}/ivicore/qface-tutorial/chapter6-own-backend") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +) +set_target_properties(QtIviInstrumentCluster PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_compile_definitions(QtIviInstrumentCluster PUBLIC + QT_BUILD_EXAMPLE_IVI_INSTRUMENTCLUSTER_LIB +) + +target_link_libraries(QtIviInstrumentCluster PUBLIC + Qt::Core + Qt::Gui + Qt::IviCore + Qt::IviCorePrivate + Qt::Qml + Qt::Quick +) + +install(TARGETS QtIviInstrumentCluster + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/imports/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/imports/CMakeLists.txt new file mode 100644 index 0000000..b19a870 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/imports/CMakeLists.txt @@ -0,0 +1,42 @@ +# Generated from imports.pro. + +cmake_minimum_required(VERSION 3.14) +project(imports 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}/ivicore/qface-tutorial/chapter6-own-backend/imports") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS IviCore) + +) +set_target_properties(imports PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_include_directories(imports PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(imports PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::IviCore +) + +install(TARGETS imports + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/instrument-cluster/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/instrument-cluster/CMakeLists.txt new file mode 100644 index 0000000..28ae324 --- /dev/null +++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/instrument-cluster/CMakeLists.txt @@ -0,0 +1,140 @@ +# Generated from instrument-cluster.pro. + +cmake_minimum_required(VERSION 3.14) +project(chapter6-own-backend 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}/ivicore/qface-tutorial/chapter6-own-backend") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +qt_add_executable(chapter6-own-backend + main.cpp +) +set_target_properties(chapter6-own-backend PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE FALSE +) +target_include_directories(chapter6-own-backend PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../frontend +) + +target_link_libraries(chapter6-own-backend PUBLIC + # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../ + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + + +# Resources: +set(app_resource_files + "Cluster.qml" + "Dial.qml" + "Fuel.qml" + "Label.qml" + "LeftDial.qml" + "RightDial.qml" + "Top.qml" +) + +qt6_add_resources(chapter6-own-backend "app" + PREFIX + "/" + FILES + ${app_resource_files} +) +set_source_files_properties("../../images/+--.png" + PROPERTIES QT_RESOURCE_ALIAS "+--.png" +) +set_source_files_properties("../../images/P-R-N-D.png" + PROPERTIES QT_RESOURCE_ALIAS "P-R-N-D.png" +) +set_source_files_properties("../../images/dial_cursor.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor.png" +) +set_source_files_properties("../../images/dial_cursor_right.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor_right.png" +) +set_source_files_properties("../../images/dial_fill_color.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color.png" +) +set_source_files_properties("../../images/dial_fill_color_left.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color_left.png" +) +set_source_files_properties("../../images/dial_pattern.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_pattern.png" +) +set_source_files_properties("../../images/fuel.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel.png" +) +set_source_files_properties("../../images/fuel_level.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel_level.png" +) +set_source_files_properties("../../images/fuelsymbol_orange.png" + PROPERTIES QT_RESOURCE_ALIAS "fuelsymbol_orange.png" +) +set_source_files_properties("../../images/left_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "left_dial.png" +) +set_source_files_properties("../../images/mask_overlay.png" + PROPERTIES QT_RESOURCE_ALIAS "mask_overlay.png" +) +set_source_files_properties("../../images/middle-bkg.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-bkg.png" +) +set_source_files_properties("../../images/middle-circle.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-circle.png" +) +set_source_files_properties("../../images/right_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "right_dial.png" +) +set_source_files_properties("../../images/top_bar.png" + PROPERTIES QT_RESOURCE_ALIAS "top_bar.png" +) +set(images_resource_files + "+--.png" + "P-R-N-D.png" + "dial_cursor.png" + "dial_cursor_right.png" + "dial_fill_color.png" + "dial_fill_color_left.png" + "dial_pattern.png" + "fuel.png" + "fuel_level.png" + "fuelsymbol_orange.png" + "left_dial.png" + "mask_overlay.png" + "middle-bkg.png" + "middle-circle.png" + "right_dial.png" + "top_bar.png" +) + +qt6_add_resources(chapter6-own-backend "images" + PREFIX + "/images" + BASE + "../../images" + FILES + ${images_resource_files} +) + +install(TARGETS chapter6-own-backend + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/ivicore/qface-tutorial/instrument-cluster/CMakeLists.txt b/examples/ivicore/qface-tutorial/instrument-cluster/CMakeLists.txt new file mode 100644 index 0000000..66bdb18 --- /dev/null +++ b/examples/ivicore/qface-tutorial/instrument-cluster/CMakeLists.txt @@ -0,0 +1,135 @@ +# Generated from instrument-cluster.pro. + +cmake_minimum_required(VERSION 3.14) +project(instrument-cluster 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}/ivicore/qface-tutorial/instrument-cluster") + +find_package(Qt6 COMPONENTS Core) +find_package(Qt6 COMPONENTS Gui) +find_package(Qt6 COMPONENTS Qml) +find_package(Qt6 COMPONENTS Quick) + +qt_add_executable(instrument-cluster + main.cpp +) +set_target_properties(instrument-cluster PROPERTIES + WIN32_EXECUTABLE TRUE + MACOSX_BUNDLE TRUE +) +target_link_libraries(instrument-cluster PUBLIC + Qt::Core + Qt::Gui + Qt::Qml + Qt::Quick +) + + +# Resources: +set(app_resource_files + "Cluster.qml" + "Dial.qml" + "Fuel.qml" + "Label.qml" + "LeftDial.qml" + "RightDial.qml" + "Top.qml" +) + +qt6_add_resources(instrument-cluster "app" + PREFIX + "/" + FILES + ${app_resource_files} +) +set_source_files_properties("../images/+--.png" + PROPERTIES QT_RESOURCE_ALIAS "+--.png" +) +set_source_files_properties("../images/P-R-N-D.png" + PROPERTIES QT_RESOURCE_ALIAS "P-R-N-D.png" +) +set_source_files_properties("../images/dial_cursor.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor.png" +) +set_source_files_properties("../images/dial_cursor_right.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_cursor_right.png" +) +set_source_files_properties("../images/dial_fill_color.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color.png" +) +set_source_files_properties("../images/dial_fill_color_left.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_fill_color_left.png" +) +set_source_files_properties("../images/dial_pattern.png" + PROPERTIES QT_RESOURCE_ALIAS "dial_pattern.png" +) +set_source_files_properties("../images/fuel.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel.png" +) +set_source_files_properties("../images/fuel_level.png" + PROPERTIES QT_RESOURCE_ALIAS "fuel_level.png" +) +set_source_files_properties("../images/fuelsymbol_orange.png" + PROPERTIES QT_RESOURCE_ALIAS "fuelsymbol_orange.png" +) +set_source_files_properties("../images/left_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "left_dial.png" +) +set_source_files_properties("../images/mask_overlay.png" + PROPERTIES QT_RESOURCE_ALIAS "mask_overlay.png" +) +set_source_files_properties("../images/middle-bkg.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-bkg.png" +) +set_source_files_properties("../images/middle-circle.png" + PROPERTIES QT_RESOURCE_ALIAS "middle-circle.png" +) +set_source_files_properties("../images/right_dial.png" + PROPERTIES QT_RESOURCE_ALIAS "right_dial.png" +) +set_source_files_properties("../images/top_bar.png" + PROPERTIES QT_RESOURCE_ALIAS "top_bar.png" +) +set(images_resource_files + "+--.png" + "P-R-N-D.png" + "dial_cursor.png" + "dial_cursor_right.png" + "dial_fill_color.png" + "dial_fill_color_left.png" + "dial_pattern.png" + "fuel.png" + "fuel_level.png" + "fuelsymbol_orange.png" + "left_dial.png" + "mask_overlay.png" + "middle-bkg.png" + "middle-circle.png" + "right_dial.png" + "top_bar.png" +) + +qt6_add_resources(instrument-cluster "images" + PREFIX + "/images" + BASE + "../images" + FILES + ${images_resource_files} +) + +install(TARGETS instrument-cluster + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) |