From 6d23cab9633fe3a9d00f354c58c15d2607c08ffd Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Wed, 29 Mar 2023 17:49:17 +0200 Subject: [PATCH] using qsk_example --- cmake/QSkinnyMacros.cmake | 25 ++++++++- cmake/QskExamples.cmake | 4 -- cmake/QskPlayground.cmake | 4 -- examples/boxes/CMakeLists.txt | 19 ++----- examples/buttons/CMakeLists.txt | 19 ++----- examples/desktop/CMakeLists.txt | 14 +---- examples/frames/CMakeLists.txt | 23 ++------ examples/gallery/CMakeLists.txt | 24 ++------- examples/glabels/CMakeLists.txt | 19 ++----- examples/iotdashboard/CMakeLists.txt | 41 +++----------- .../iotdashboard_smoketest/CMakeLists.txt | 24 --------- examples/layouts/CMakeLists.txt | 19 ++----- examples/listbox/CMakeLists.txt | 14 +---- examples/messagebox/CMakeLists.txt | 14 +---- examples/messageboxQml/CMakeLists.txt | 19 ++----- examples/mycontrols/CMakeLists.txt | 15 ++---- examples/qvgviewer/CMakeLists.txt | 53 ++----------------- examples/tabview/CMakeLists.txt | 15 ++---- examples/thumbnails/CMakeLists.txt | 14 +---- playground/anchors/CMakeLists.txt | 22 ++------ playground/dialogbuttons/CMakeLists.txt | 19 ++----- playground/dials/CMakeLists.txt | 23 ++------ playground/gradients/CMakeLists.txt | 37 ++++--------- playground/grids/CMakeLists.txt | 19 ++----- playground/images/CMakeLists.txt | 27 ++-------- playground/inputpanel/CMakeLists.txt | 15 +----- playground/invoker/CMakeLists.txt | 27 ++-------- playground/shadows/CMakeLists.txt | 21 ++------ playground/shapes/CMakeLists.txt | 21 ++------ playground/webview/CMakeLists.txt | 25 ++------- 30 files changed, 122 insertions(+), 513 deletions(-) delete mode 100644 cmake/QskExamples.cmake delete mode 100644 cmake/QskPlayground.cmake delete mode 100644 examples/iotdashboard_smoketest/CMakeLists.txt diff --git a/cmake/QSkinnyMacros.cmake b/cmake/QSkinnyMacros.cmake index d332b82b..3e08c769 100644 --- a/cmake/QSkinnyMacros.cmake +++ b/cmake/QSkinnyMacros.cmake @@ -11,4 +11,27 @@ if(TARGET ${Qt}::Svg) WORKING_DIRECTORY $ COMMENT "Compiling ${SVG_FILENAME} to ${QVG_FILENAME}") endfunction() -endif() \ No newline at end of file +endif() + +function(qsk_example EXAMPLE_NAME) + + set(TARGET_NAME ${EXAMPLE_NAME}) + + qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE + ${SOURCES} ${HEADERS} ${RESOURCES}) + + set_target_properties(${TARGET_NAME} PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../bin ) + + target_link_libraries(${TARGET_NAME} PRIVATE qskinny ) + + # not all examples need this one. TODO ... + target_link_libraries(${TARGET_NAME} PRIVATE qsktestsupport) + + # only needed, when having QML files, autodetection might be possible + target_link_libraries(${TARGET_NAME} PRIVATE qskqmlexport) + + # for examples with subdirectories + target_include_directories(${TARGET_NAME} PRIVATE ${CMAKE_CURRENT_LIST_DIR}) + +endfunction() diff --git a/cmake/QskExamples.cmake b/cmake/QskExamples.cmake deleted file mode 100644 index 3dfb1126..00000000 --- a/cmake/QskExamples.cmake +++ /dev/null @@ -1,4 +0,0 @@ -set_target_properties(${TARGET_NAME} PROPERTIES - FOLDER examples - RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/examples/bin -) diff --git a/cmake/QskPlayground.cmake b/cmake/QskPlayground.cmake deleted file mode 100644 index 47120832..00000000 --- a/cmake/QskPlayground.cmake +++ /dev/null @@ -1,4 +0,0 @@ -set_target_properties(${TARGET_NAME} PROPERTIES - FOLDER playground - RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/playground/bin -) diff --git a/examples/boxes/CMakeLists.txt b/examples/boxes/CMakeLists.txt index 56dab256..9561279c 100644 --- a/examples/boxes/CMakeLists.txt +++ b/examples/boxes/CMakeLists.txt @@ -1,17 +1,4 @@ -list(APPEND TARGET_HEADERS - Box.h) +list(APPEND HEADERS Box.h) +list(APPEND SOURCES Box.cpp main.cpp) -list(APPEND TARGET_SOURCES - Box.cpp - main.cpp) - -set(TARGET_NAME boxes) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_HEADERS}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(boxes) diff --git a/examples/buttons/CMakeLists.txt b/examples/buttons/CMakeLists.txt index 826e35aa..c161eae5 100644 --- a/examples/buttons/CMakeLists.txt +++ b/examples/buttons/CMakeLists.txt @@ -1,17 +1,4 @@ -list(APPEND TARGET_RESSOURCES - buttons.qrc) +list(APPEND RESOURCES buttons.qrc) +list(APPEND SOURCES main.cpp) -list(APPEND TARGET_SOURCES - main.cpp) - -set(TARGET_NAME buttons) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport - qskqmlexport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(buttons) diff --git a/examples/desktop/CMakeLists.txt b/examples/desktop/CMakeLists.txt index a5325a12..0575cfd4 100644 --- a/examples/desktop/CMakeLists.txt +++ b/examples/desktop/CMakeLists.txt @@ -1,13 +1,3 @@ -list(APPEND TARGET_SOURCES - main.cpp) +list(APPEND SOURCES main.cpp) -set(TARGET_NAME desktop) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(desktop) diff --git a/examples/frames/CMakeLists.txt b/examples/frames/CMakeLists.txt index 507c3a3e..70ac529d 100644 --- a/examples/frames/CMakeLists.txt +++ b/examples/frames/CMakeLists.txt @@ -1,21 +1,6 @@ -list(APPEND TARGET_RESSOURCES - frames.qrc) +list(APPEND RESOURCES frames.qrc) +list(APPEND HEADERS Frame.h) +list(APPEND SOURCES Frame.cpp main.cpp) -list(APPEND TARGET_HEADERS - Frame.h) +qsk_example(frames) -list(APPEND TARGET_SOURCES - Frame.cpp - main.cpp) - -set(TARGET_NAME frames) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_HEADERS} ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport - qskqmlexport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) diff --git a/examples/gallery/CMakeLists.txt b/examples/gallery/CMakeLists.txt index 956b6ecf..e1ecdb47 100644 --- a/examples/gallery/CMakeLists.txt +++ b/examples/gallery/CMakeLists.txt @@ -1,4 +1,6 @@ -list(APPEND TARGET_HEADERS +list(APPEND RESOURCES icons.qrc ) + +list(APPEND HEADERS label/LabelPage.h inputs/InputPage.h progressbar/ProgressBarPage.h @@ -7,7 +9,7 @@ list(APPEND TARGET_HEADERS dialog/DialogPage.h Page.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES label/LabelPage.cpp inputs/InputPage.cpp progressbar/ProgressBarPage.cpp @@ -17,20 +19,4 @@ list(APPEND TARGET_SOURCES Page.cpp main.cpp) -list(APPEND TARGET_RESSOURCES - icons.qrc ) - -set(TARGET_NAME gallery) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_HEADERS} ${TARGET_RESSOURCES} ) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -target_include_directories(${TARGET_NAME} - PRIVATE - ${CMAKE_CURRENT_LIST_DIR}) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(gallery) diff --git a/examples/glabels/CMakeLists.txt b/examples/glabels/CMakeLists.txt index 6a3ac90e..fe3f4308 100644 --- a/examples/glabels/CMakeLists.txt +++ b/examples/glabels/CMakeLists.txt @@ -1,17 +1,4 @@ -list(APPEND TARGET_RESSOURCES - glabels.qrc) +list(APPEND RESOURCES glabels.qrc) +list(APPEND SOURCES main.cpp) -list(APPEND TARGET_SOURCES - main.cpp) - -set(TARGET_NAME glabels) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport - qskqmlexport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(glabels) diff --git a/examples/iotdashboard/CMakeLists.txt b/examples/iotdashboard/CMakeLists.txt index ff55f694..addfc531 100644 --- a/examples/iotdashboard/CMakeLists.txt +++ b/examples/iotdashboard/CMakeLists.txt @@ -1,4 +1,6 @@ -list(APPEND TARGET_SOURCES +list(APPEND RESOURCES images.qrc fonts.qrc) + +list(APPEND SOURCES Box.cpp BoxWithButtons.cpp CircularProgressBar.cpp @@ -31,12 +33,12 @@ list(APPEND TARGET_SOURCES StorageBarSkinlet.cpp main.cpp) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES nodes/DiagramDataNode.cpp nodes/DiagramSegmentsNode.cpp nodes/RadialTickmarksNode.cpp) -list(APPEND TARGET_HEADERS +list(APPEND HEADERS Box.h BoxWithButtons.h CircularProgressBar.h @@ -68,38 +70,9 @@ list(APPEND TARGET_HEADERS StorageBar.h StorageBarSkinlet.h) -list(APPEND TARGET_HEADERS +list(APPEND HEADERS nodes/DiagramDataNode.h nodes/DiagramSegmentsNode.h nodes/RadialTickmarksNode.h) -list(APPEND TARGET_RESSOURCES - images.qrc - fonts.qrc) - -set(TARGET_NAME iotdashboard) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES} - ${TARGET_HEADERS} - ${TARGET_RESSOURCES}) - -if(TARGET Qsk::qskinny) - # integration test - # - qsktestsupport doesn't exists - # - qskinny has a namespace Qsk - target_link_libraries(${TARGET_NAME} - PRIVATE - Qsk::qskinny) -else() - target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - - target_compile_definitions(${TARGET_NAME} - PRIVATE - USE_SHORTCUTS) -endif() - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(iotdashboard) diff --git a/examples/iotdashboard_smoketest/CMakeLists.txt b/examples/iotdashboard_smoketest/CMakeLists.txt deleted file mode 100644 index 2ee64519..00000000 --- a/examples/iotdashboard_smoketest/CMakeLists.txt +++ /dev/null @@ -1,24 +0,0 @@ -cmake_minimum_required(VERSION 3.18) - -project(iotdashboard_smoketest) - -find_package(QSkinny REQUIRED) - -find_package(Qt6 COMPONENTS Core QUIET) -if (NOT Qt6_FOUND) - find_package(Qt5 5.15 REQUIRED COMPONENTS Core Gui OpenGL Quick Svg Widgets) - find_package(Qt5 5.15 OPTIONAL_COMPONENTS QuickWidgets WebEngine WebEngineCore) - message(WARNING "using QSkinny's 'qt_add_executable()'") - function(qt_add_executable) - add_executable(${ARGV}) - endfunction(qt_add_executable) - message(WARNING "using QSkinny's 'qt_add_library()'") - function(qt_add_library) - add_library(${ARGV}) - endfunction(qt_add_library) -else() - find_package(Qt6 REQUIRED COMPONENTS Core Gui OpenGL Quick QuickWidgets Svg Widgets) - find_package(Qt6 OPTIONAL_COMPONENTS QuickWidgets WebEngineCore WebEngineQuick) -endif() - -add_subdirectory(../iotdashboard ${CMAKE_CURRENT_BINARY_DIR}/../iotdashboard) \ No newline at end of file diff --git a/examples/layouts/CMakeLists.txt b/examples/layouts/CMakeLists.txt index 384d2a1e..5b5b9e81 100644 --- a/examples/layouts/CMakeLists.txt +++ b/examples/layouts/CMakeLists.txt @@ -1,7 +1,6 @@ -list(APPEND TARGET_RESSOURCES - layouts.qrc) +list(APPEND RESOURCES layouts.qrc) -list(APPEND TARGET_HEADERS +list(APPEND HEADERS TestRectangle.h ButtonBox.h FlowLayoutPage.h @@ -10,7 +9,7 @@ list(APPEND TARGET_HEADERS DynamicConstraintsPage.h StackLayoutPage.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES TestRectangle.cpp ButtonBox.cpp FlowLayoutPage.cpp @@ -20,14 +19,4 @@ list(APPEND TARGET_SOURCES StackLayoutPage.cpp main.cpp) -set(TARGET_NAME layouts) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_HEADERS} ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qskqmlexport - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(layouts) diff --git a/examples/listbox/CMakeLists.txt b/examples/listbox/CMakeLists.txt index f6aa0c15..d52b9f62 100644 --- a/examples/listbox/CMakeLists.txt +++ b/examples/listbox/CMakeLists.txt @@ -1,13 +1,3 @@ -list(APPEND TARGET_SOURCES - main.cpp) +list(APPEND SOURCES main.cpp) -set(TARGET_NAME listbox) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_HEADERS} ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(listbox) diff --git a/examples/messagebox/CMakeLists.txt b/examples/messagebox/CMakeLists.txt index b00f56e8..daf9aa05 100644 --- a/examples/messagebox/CMakeLists.txt +++ b/examples/messagebox/CMakeLists.txt @@ -1,13 +1,3 @@ -list(APPEND TARGET_SOURCES - main.cpp) +list(APPEND SOURCES main.cpp) -set(TARGET_NAME messagebox) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(messagebox) diff --git a/examples/messageboxQml/CMakeLists.txt b/examples/messageboxQml/CMakeLists.txt index e58441eb..6127c76e 100644 --- a/examples/messageboxQml/CMakeLists.txt +++ b/examples/messageboxQml/CMakeLists.txt @@ -1,17 +1,4 @@ -list(APPEND TARGET_RESSOURCES - messagebox.qrc) +list(APPEND RESSOURCES messagebox.qrc) +list(APPEND SOURCES main.cpp) -list(APPEND TARGET_SOURCES - main.cpp) - -set(TARGET_NAME messageboxQml) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport - qskqmlexport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(messageboxQml) diff --git a/examples/mycontrols/CMakeLists.txt b/examples/mycontrols/CMakeLists.txt index 791c2d1c..4fca17d5 100644 --- a/examples/mycontrols/CMakeLists.txt +++ b/examples/mycontrols/CMakeLists.txt @@ -1,21 +1,12 @@ -list(APPEND TARGET_SOURCES +list(APPEND SOURCES MySkin.cpp MyToggleButton.cpp MyToggleButtonSkinlet.cpp main.cpp) -list(APPEND TARGET_HEADERS +list(APPEND HEADERS MyToggleButton.h MyToggleButtonSkinlet.h MySkin.h) -set(TARGET_NAME mycontrols) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_HEADERS}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(mycontrols) diff --git a/examples/qvgviewer/CMakeLists.txt b/examples/qvgviewer/CMakeLists.txt index 8a18806a..2741688b 100644 --- a/examples/qvgviewer/CMakeLists.txt +++ b/examples/qvgviewer/CMakeLists.txt @@ -1,56 +1,11 @@ -list(APPEND TARGET_HEADERS +list(APPEND HEADERS MainWindow.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES MainWindow.cpp main.cpp) -list(APPEND TARGET_RESSOURCES +list(APPEND RESOURCES qvgviewer.qrc) -list(APPEND TARGET_SVGS - svg/01.01.10.svg - svg/01.03.04q.svg - svg/01.08.05q.svg - svg/01.25.18.svg) - -list(APPEND TARGET_QVGS - qvg/01.01.10.qvg - qvg/01.03.04q.qvg - qvg/01.08.05q.qvg - qvg/01.25.18.qvg) - -set(TARGET_NAME qvgviewer) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES} - ${TARGET_HEADERS} - ${TARGET_RESSOURCES} - ${TARGET_SVGS}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -if(ENABLE_AUTOQVG) - qsk_svg2qvg(${CMAKE_CURRENT_LIST_DIR}/svg/01.01.10.svg - ${CMAKE_CURRENT_LIST_DIR}/qvg/01.01.10.qvg) - qsk_svg2qvg(${CMAKE_CURRENT_LIST_DIR}/svg/01.03.04q.svg - ${CMAKE_CURRENT_LIST_DIR}/qvg/01.03.04q.qvg) - qsk_svg2qvg(${CMAKE_CURRENT_LIST_DIR}/svg/01.08.05q.svg - ${CMAKE_CURRENT_LIST_DIR}/qvg/01.08.05q.qvg) - qsk_svg2qvg(${CMAKE_CURRENT_LIST_DIR}/svg/01.25.18.svg - ${CMAKE_CURRENT_LIST_DIR}/qvg/01.25.18.qvg) -else() - # When cross compiling we need to have the svg2qvg tool being - # compiled for the build environment - not for the one of the target. - # So we better have precompiled qvg files in the repository to - # make the build process much easier -endif() - -target_sources(${TARGET_NAME} PRIVATE ${TARGET_QVGS}) -source_group("generated" FILES ${TARGET_QVGS}) -source_group("svg" FILES ${TARGET_SVGS}) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(qvgviewer) diff --git a/examples/tabview/CMakeLists.txt b/examples/tabview/CMakeLists.txt index 19be646b..473b2f46 100644 --- a/examples/tabview/CMakeLists.txt +++ b/examples/tabview/CMakeLists.txt @@ -1,21 +1,12 @@ -list(APPEND TARGET_HEADERS +list(APPEND HEADERS CustomSlider.h CustomSliderSkinlet.h OtherSlider.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES CustomSlider.cpp CustomSliderSkinlet.cpp OtherSlider.cpp main.cpp) -set(TARGET_NAME tabview) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_HEADERS}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(tabview) diff --git a/examples/thumbnails/CMakeLists.txt b/examples/thumbnails/CMakeLists.txt index b04e96e4..51362913 100644 --- a/examples/thumbnails/CMakeLists.txt +++ b/examples/thumbnails/CMakeLists.txt @@ -1,13 +1,3 @@ -list(APPEND TARGET_SOURCES - main.cpp) +list(APPEND SOURCES main.cpp) -set(TARGET_NAME thumbnails) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskExamples.cmake) +qsk_example(thumbnails) diff --git a/playground/anchors/CMakeLists.txt b/playground/anchors/CMakeLists.txt index a2f79d5c..c539c13d 100644 --- a/playground/anchors/CMakeLists.txt +++ b/playground/anchors/CMakeLists.txt @@ -1,4 +1,4 @@ -list(APPEND TARGET_HEADERS +list(APPEND HEADERS kiwi/Constraint.h kiwi/Expression.h kiwi/Solver.h @@ -6,28 +6,16 @@ list(APPEND TARGET_HEADERS kiwi/Term.h kiwi/Variable.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES kiwi/Expression.cpp kiwi/Constraint.cpp kiwi/Solver.cpp) -list(APPEND TARGET_HEADERS +list(APPEND HEADERS AnchorBox.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES AnchorBox.cpp main.cpp) -set(TARGET_NAME anchors) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES} - ${TARGET_HEADERS} - ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) +qsk_example(anchors) diff --git a/playground/dialogbuttons/CMakeLists.txt b/playground/dialogbuttons/CMakeLists.txt index 67f46189..92f55974 100644 --- a/playground/dialogbuttons/CMakeLists.txt +++ b/playground/dialogbuttons/CMakeLists.txt @@ -1,17 +1,4 @@ -set(TARGET_NAME qskexample) +list(APPEND HEADERS Window.h) +list(APPEND SOURCES Window.cpp main.cpp) -list(APPEND TARGET_HEADERS - Window.h) - -list(APPEND TARGET_SOURCES - Window.cpp - main.cpp) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE ${TARGET_SOURCES} ${TARGET_HEADERS}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) +qsk_example(dialogbuttons) diff --git a/playground/dials/CMakeLists.txt b/playground/dials/CMakeLists.txt index 4713f2bd..6684e6d8 100644 --- a/playground/dials/CMakeLists.txt +++ b/playground/dials/CMakeLists.txt @@ -1,29 +1,16 @@ -list(APPEND TARGET_HEADERS +list(APPEND RESOURCES images.qrc) + +list(APPEND HEADERS SkinFactory.h Dial.h DialSkinlet.h Dashboard.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES SkinFactory.cpp Dial.cpp DialSkinlet.cpp Dashboard.cpp main.cpp) -list(APPEND TARGET_RESSOURCES - images.qrc) - -set(TARGET_NAME dials) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES} - ${TARGET_HEADERS} - ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) +qsk_example(dials) diff --git a/playground/gradients/CMakeLists.txt b/playground/gradients/CMakeLists.txt index 2135c73d..2e58f005 100644 --- a/playground/gradients/CMakeLists.txt +++ b/playground/gradients/CMakeLists.txt @@ -1,33 +1,16 @@ -list(APPEND TARGET_HEADERS - GradientView.h) - -list(APPEND TARGET_SOURCES - GradientView.cpp - main.cpp) - -set(TARGET_NAME gradients) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_HEADERS} - ${TARGET_SOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) +list(APPEND HEADERS GradientView.h) +list(APPEND SOURCES GradientView.cpp main.cpp) if(TARGET quickshapes_private) - target_sources(gradients PUBLIC - GradientQuickShape.cpp GradientQuickShape.h - ) - target_compile_definitions(gradients PRIVATE - SHAPE_GRADIENT - ) + list(APPEND SOURCES GradientQuickShape.cpp) + list(APPEND HEADERS GradientQuickShape.cpp) - target_link_libraries(gradients PRIVATE - quickshapes_private - ) endif() -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) +qsk_example(gradients) + +if(TARGET quickshapes_private) + target_compile_definitions(gradients PRIVATE SHAPE_GRADIENT) + target_link_libraries(gradients PRIVATE quickshapes_private) +endif() diff --git a/playground/grids/CMakeLists.txt b/playground/grids/CMakeLists.txt index 527562fb..c6cda32c 100644 --- a/playground/grids/CMakeLists.txt +++ b/playground/grids/CMakeLists.txt @@ -1,5 +1,4 @@ - -list(APPEND TARGET_HEADERS +list(APPEND HEADERS GridAccessor.h GridSkinny.h GridWidgets.h @@ -7,7 +6,7 @@ list(APPEND TARGET_HEADERS GridQuick.h TestBox.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES GridAccessor.cpp GridSkinny.cpp GridWidgets.cpp @@ -16,16 +15,6 @@ list(APPEND TARGET_SOURCES TestBox.cpp main.cpp) -set(TARGET_NAME grid) +qsk_example(grids) +target_link_libraries(grids PRIVATE Qt::QuickWidgets) -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES} - ${TARGET_HEADERS}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport - Qt::QuickWidgets) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) diff --git a/playground/images/CMakeLists.txt b/playground/images/CMakeLists.txt index d8cdeffc..7f732d02 100644 --- a/playground/images/CMakeLists.txt +++ b/playground/images/CMakeLists.txt @@ -1,24 +1,5 @@ -list(APPEND TARGET_RESSOURCES - images.qrc) +list(APPEND RESOURCES images.qrc) +list(APPEND HEADERS Image.h) +list(APPEND SOURCES Image.cpp main.cpp) -list(APPEND TARGET_HEADERS - Image.h) - -list(APPEND TARGET_SOURCES - Image.cpp - main.cpp) - -set(TARGET_NAME images) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES} - ${TARGET_HEADERS} - ${TARGET_RESSOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qskqmlexport - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) +qsk_example(images) diff --git a/playground/inputpanel/CMakeLists.txt b/playground/inputpanel/CMakeLists.txt index 61b885d7..912eaeee 100644 --- a/playground/inputpanel/CMakeLists.txt +++ b/playground/inputpanel/CMakeLists.txt @@ -1,14 +1,3 @@ -list(APPEND TARGET_SOURCES - main.cpp) +list(APPEND SOURCES main.cpp) -set(TARGET_NAME inputpanel) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) +qsk_example(inputpanel) diff --git a/playground/invoker/CMakeLists.txt b/playground/invoker/CMakeLists.txt index bd16f943..d9c4c447 100644 --- a/playground/invoker/CMakeLists.txt +++ b/playground/invoker/CMakeLists.txt @@ -1,25 +1,6 @@ -list(APPEND TARGET_HEADERS - Callback.h - Invoker.h) +list(APPEND HEADERS Callback.h Invoker.h) +list(APPEND SOURCES Callback.cpp Invoker.cpp main.cpp) -list(APPEND TARGET_SOURCES - Callback.cpp - Invoker.cpp - main.cpp) +qsk_example(invoker) +set_target_properties(invoker PROPERTIES AUTOMOC_MOC_OPTIONS --no-warnings) -set(TARGET_NAME invoker) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES} - ${TARGET_HEADERS}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny) - -set_target_properties(${TARGET_NAME} - PROPERTIES - AUTOMOC_MOC_OPTIONS --no-warnings - ) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) diff --git a/playground/shadows/CMakeLists.txt b/playground/shadows/CMakeLists.txt index 900bdd2c..0e229aa2 100644 --- a/playground/shadows/CMakeLists.txt +++ b/playground/shadows/CMakeLists.txt @@ -1,19 +1,4 @@ -list(APPEND TARGET_HEADERS - ShadowedBox.h) +list(APPEND HEADERS ShadowedBox.h) +list(APPEND SOURCES ShadowedBox.cpp main.cpp) -list(APPEND TARGET_SOURCES - ShadowedBox.cpp - main.cpp) - -set(TARGET_NAME shadows) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_HEADERS} - ${TARGET_SOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) +qsk_example(shadows) diff --git a/playground/shapes/CMakeLists.txt b/playground/shapes/CMakeLists.txt index 669261c0..954ea987 100644 --- a/playground/shapes/CMakeLists.txt +++ b/playground/shapes/CMakeLists.txt @@ -1,29 +1,16 @@ -list(APPEND TARGET_RESSOURCES - shapes.qrc) +list(APPEND RESOURCES shapes.qrc) -list(APPEND TARGET_HEADERS +list(APPEND HEADERS ShapeItem.h GeometricShape.h Window.h Stroke.h) -list(APPEND TARGET_SOURCES +list(APPEND SOURCES Stroke.cpp ShapeItem.cpp GeometricShape.cpp Window.cpp main.cpp) -set(TARGET_NAME shapes) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_HEADERS} - ${TARGET_SOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qskqmlexport - qsktestsupport) - -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake) +qsk_example(shapes) diff --git a/playground/webview/CMakeLists.txt b/playground/webview/CMakeLists.txt index ea3af8e6..666462e7 100644 --- a/playground/webview/CMakeLists.txt +++ b/playground/webview/CMakeLists.txt @@ -1,27 +1,10 @@ +list(APPEND SOURCES main.cpp) -list(APPEND TARGET_SOURCES - main.cpp) - -set(TARGET_NAME webview) - -qt_add_executable(${TARGET_NAME} WIN32 MACOSX_BUNDLE - ${TARGET_SOURCES}) - -target_link_libraries(${TARGET_NAME} - PRIVATE - qskinny - qsktestsupport) +qsk_example(webview) if (QT_VERSION_MAJOR VERSION_GREATER "5") - target_link_libraries(${TARGET_NAME} - PRIVATE - Qt::WebEngineQuick - Qt::WebEngineQuickPrivate) + target_link_libraries(webview PRIVATE Qt::WebEngineQuick Qt::WebEngineQuickPrivate) else() - target_link_libraries(${TARGET_NAME} - PRIVATE - Qt::WebEngine - Qt::WebEnginePrivate) + target_link_libraries(webview PRIVATE Qt::WebEngine Qt::WebEnginePrivate) endif() -include(${CMAKE_SOURCE_DIR}/cmake/QskPlayground.cmake)