diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-09-13 14:38:44 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-09-13 14:38:44 +1000 |
| commit | 306cfc06ed38a2f86616c1f2fe64de45321f21a6 (patch) | |
| tree | a27c79d9c4d01c2dadeeae74c844875ab7ab4eed /plugin/src/Caelestia | |
| parent | popouts/tray: better interaction (diff) | |
| download | caelestia-shell-306cfc06ed38a2f86616c1f2fe64de45321f21a6.tar.gz caelestia-shell-306cfc06ed38a2f86616c1f2fe64de45321f21a6.tar.bz2 caelestia-shell-306cfc06ed38a2f86616c1f2fe64de45321f21a6.zip | |
plugin: refactor into modules
Diffstat (limited to 'plugin/src/Caelestia')
| -rw-r--r-- | plugin/src/Caelestia/CMakeLists.txt | 77 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Managers/CMakeLists.txt | 9 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Managers/cachingimagemanager.cpp (renamed from plugin/src/Caelestia/cachingimagemanager.cpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Managers/cachingimagemanager.hpp (renamed from plugin/src/Caelestia/cachingimagemanager.hpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Models/CMakeLists.txt | 8 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Models/filesystemmodel.cpp (renamed from plugin/src/Caelestia/filesystemmodel.cpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Models/filesystemmodel.hpp (renamed from plugin/src/Caelestia/filesystemmodel.hpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/CMakeLists.txt | 14 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/audiocollector.cpp (renamed from plugin/src/Caelestia/audiocollector.cpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/audiocollector.hpp (renamed from plugin/src/Caelestia/audiocollector.hpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/audioprovider.cpp (renamed from plugin/src/Caelestia/audioprovider.cpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/audioprovider.hpp (renamed from plugin/src/Caelestia/audioprovider.hpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/beattracker.cpp (renamed from plugin/src/Caelestia/beattracker.cpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/beattracker.hpp (renamed from plugin/src/Caelestia/beattracker.hpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/cavaprovider.cpp (renamed from plugin/src/Caelestia/cavaprovider.cpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/cavaprovider.hpp (renamed from plugin/src/Caelestia/cavaprovider.hpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/service.cpp (renamed from plugin/src/Caelestia/service.cpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/service.hpp (renamed from plugin/src/Caelestia/service.hpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/serviceref.cpp (renamed from plugin/src/Caelestia/serviceref.cpp) | 0 | ||||
| -rw-r--r-- | plugin/src/Caelestia/Services/serviceref.hpp (renamed from plugin/src/Caelestia/serviceref.hpp) | 0 |
20 files changed, 69 insertions, 39 deletions
diff --git a/plugin/src/Caelestia/CMakeLists.txt b/plugin/src/Caelestia/CMakeLists.txt index 94496c6..2832b5d 100644 --- a/plugin/src/Caelestia/CMakeLists.txt +++ b/plugin/src/Caelestia/CMakeLists.txt @@ -8,50 +8,49 @@ pkg_check_modules(Cava IMPORTED_TARGET cava REQUIRED) set(QT_QML_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/qml") qt_standard_project_setup(REQUIRES 6.9) -qt_add_qml_module(caelestia +function(qml_module arg_TARGET) + cmake_parse_arguments(PARSE_ARGV 1 arg "" "URI" "SOURCES;LIBRARIES") + + qt_add_qml_module(${arg_TARGET} + URI ${arg_URI} + VERSION ${VERSION} + SOURCES ${arg_SOURCES} + ) + + qt_query_qml_module(${arg_TARGET} + URI module_uri + VERSION module_version + PLUGIN_TARGET module_plugin_target + TARGET_PATH module_target_path + QMLDIR module_qmldir + TYPEINFO module_typeinfo + ) + + message(STATUS "Created QML module ${module_uri}, version ${module_version}") + + set(module_dir "${INSTALL_QMLDIR}/${module_target_path}") + install(TARGETS ${arg_TARGET} LIBRARY DESTINATION "${module_dir}" RUNTIME DESTINATION "${module_dir}") + install(TARGETS "${module_plugin_target}" LIBRARY DESTINATION "${module_dir}" RUNTIME DESTINATION "${module_dir}") + install(FILES "${module_qmldir}" DESTINATION "${module_dir}") + install(FILES "${module_typeinfo}" DESTINATION "${module_dir}") + + target_link_libraries(${arg_TARGET} PRIVATE Qt::Core Qt::Qml ${arg_LIBRARIES}) +endfunction() + +qml_module(caelestia URI Caelestia - VERSION ${VERSION} SOURCES cutils.hpp cutils.cpp - cachingimagemanager.hpp cachingimagemanager.cpp - filesystemmodel.hpp filesystemmodel.cpp qalculator.hpp qalculator.cpp - beattracker.hpp beattracker.cpp - service.hpp service.cpp - serviceref.hpp serviceref.cpp - audiocollector.hpp audiocollector.cpp - audioprovider.hpp audioprovider.cpp - cavaprovider.hpp cavaprovider.cpp appdb.hpp appdb.cpp requests.hpp requests.cpp + LIBRARIES + Qt::Gui + Qt::Quick + Qt::Sql + PkgConfig::Qalculate ) -qt_query_qml_module(caelestia - URI module_uri - VERSION module_version - PLUGIN_TARGET module_plugin_target - TARGET_PATH module_target_path - QMLDIR module_qmldir - TYPEINFO module_typeinfo -) - -message(STATUS "Created QML module ${module_uri}, version ${module_version}") - -set(module_dir "${INSTALL_QMLDIR}/${module_target_path}") -install(TARGETS caelestia LIBRARY DESTINATION "${module_dir}" RUNTIME DESTINATION "${module_dir}") -install(TARGETS "${module_plugin_target}" LIBRARY DESTINATION "${module_dir}" RUNTIME DESTINATION "${module_dir}") -install(FILES "${module_qmldir}" DESTINATION "${module_dir}") -install(FILES "${module_typeinfo}" DESTINATION "${module_dir}") - -target_link_libraries(caelestia PRIVATE - Qt::Core - Qt::Qml - Qt::Gui - Qt::Quick - Qt::Concurrent - Qt::Sql - PkgConfig::Qalculate - PkgConfig::Pipewire - PkgConfig::Aubio - PkgConfig::Cava -) +add_subdirectory(Managers) +add_subdirectory(Models) +add_subdirectory(Services) diff --git a/plugin/src/Caelestia/Managers/CMakeLists.txt b/plugin/src/Caelestia/Managers/CMakeLists.txt new file mode 100644 index 0000000..9bb5baa --- /dev/null +++ b/plugin/src/Caelestia/Managers/CMakeLists.txt @@ -0,0 +1,9 @@ +qml_module(caelestia-managers + URI Caelestia.Managers + SOURCES + cachingimagemanager.hpp cachingimagemanager.cpp + LIBRARIES + Qt::Gui + Qt::Quick + Qt::Concurrent +) diff --git a/plugin/src/Caelestia/cachingimagemanager.cpp b/plugin/src/Caelestia/Managers/cachingimagemanager.cpp index 3394f89..3394f89 100644 --- a/plugin/src/Caelestia/cachingimagemanager.cpp +++ b/plugin/src/Caelestia/Managers/cachingimagemanager.cpp diff --git a/plugin/src/Caelestia/cachingimagemanager.hpp b/plugin/src/Caelestia/Managers/cachingimagemanager.hpp index f05ea34..f05ea34 100644 --- a/plugin/src/Caelestia/cachingimagemanager.hpp +++ b/plugin/src/Caelestia/Managers/cachingimagemanager.hpp diff --git a/plugin/src/Caelestia/Models/CMakeLists.txt b/plugin/src/Caelestia/Models/CMakeLists.txt new file mode 100644 index 0000000..640e29e --- /dev/null +++ b/plugin/src/Caelestia/Models/CMakeLists.txt @@ -0,0 +1,8 @@ +qml_module(caelestia-models + URI Caelestia.Models + SOURCES + filesystemmodel.hpp filesystemmodel.cpp + LIBRARIES + Qt::Gui + Qt::Concurrent +) diff --git a/plugin/src/Caelestia/filesystemmodel.cpp b/plugin/src/Caelestia/Models/filesystemmodel.cpp index 54807b5..54807b5 100644 --- a/plugin/src/Caelestia/filesystemmodel.cpp +++ b/plugin/src/Caelestia/Models/filesystemmodel.cpp diff --git a/plugin/src/Caelestia/filesystemmodel.hpp b/plugin/src/Caelestia/Models/filesystemmodel.hpp index 4ea5f0a..4ea5f0a 100644 --- a/plugin/src/Caelestia/filesystemmodel.hpp +++ b/plugin/src/Caelestia/Models/filesystemmodel.hpp diff --git a/plugin/src/Caelestia/Services/CMakeLists.txt b/plugin/src/Caelestia/Services/CMakeLists.txt new file mode 100644 index 0000000..8ce868b --- /dev/null +++ b/plugin/src/Caelestia/Services/CMakeLists.txt @@ -0,0 +1,14 @@ +qml_module(caelestia-services + URI Caelestia.Services + SOURCES + service.hpp service.cpp + serviceref.hpp serviceref.cpp + beattracker.hpp beattracker.cpp + audiocollector.hpp audiocollector.cpp + audioprovider.hpp audioprovider.cpp + cavaprovider.hpp cavaprovider.cpp + LIBRARIES + PkgConfig::Pipewire + PkgConfig::Aubio + PkgConfig::Cava +) diff --git a/plugin/src/Caelestia/audiocollector.cpp b/plugin/src/Caelestia/Services/audiocollector.cpp index 9dc3871..9dc3871 100644 --- a/plugin/src/Caelestia/audiocollector.cpp +++ b/plugin/src/Caelestia/Services/audiocollector.cpp diff --git a/plugin/src/Caelestia/audiocollector.hpp b/plugin/src/Caelestia/Services/audiocollector.hpp index 74b0877..74b0877 100644 --- a/plugin/src/Caelestia/audiocollector.hpp +++ b/plugin/src/Caelestia/Services/audiocollector.hpp diff --git a/plugin/src/Caelestia/audioprovider.cpp b/plugin/src/Caelestia/Services/audioprovider.cpp index f31480e..f31480e 100644 --- a/plugin/src/Caelestia/audioprovider.cpp +++ b/plugin/src/Caelestia/Services/audioprovider.cpp diff --git a/plugin/src/Caelestia/audioprovider.hpp b/plugin/src/Caelestia/Services/audioprovider.hpp index c92b965..c92b965 100644 --- a/plugin/src/Caelestia/audioprovider.hpp +++ b/plugin/src/Caelestia/Services/audioprovider.hpp diff --git a/plugin/src/Caelestia/beattracker.cpp b/plugin/src/Caelestia/Services/beattracker.cpp index 462abb8..462abb8 100644 --- a/plugin/src/Caelestia/beattracker.cpp +++ b/plugin/src/Caelestia/Services/beattracker.cpp diff --git a/plugin/src/Caelestia/beattracker.hpp b/plugin/src/Caelestia/Services/beattracker.hpp index ab18373..ab18373 100644 --- a/plugin/src/Caelestia/beattracker.hpp +++ b/plugin/src/Caelestia/Services/beattracker.hpp diff --git a/plugin/src/Caelestia/cavaprovider.cpp b/plugin/src/Caelestia/Services/cavaprovider.cpp index 76a1a10..76a1a10 100644 --- a/plugin/src/Caelestia/cavaprovider.cpp +++ b/plugin/src/Caelestia/Services/cavaprovider.cpp diff --git a/plugin/src/Caelestia/cavaprovider.hpp b/plugin/src/Caelestia/Services/cavaprovider.hpp index 6dab635..6dab635 100644 --- a/plugin/src/Caelestia/cavaprovider.hpp +++ b/plugin/src/Caelestia/Services/cavaprovider.hpp diff --git a/plugin/src/Caelestia/service.cpp b/plugin/src/Caelestia/Services/service.cpp index bc919c9..bc919c9 100644 --- a/plugin/src/Caelestia/service.cpp +++ b/plugin/src/Caelestia/Services/service.cpp diff --git a/plugin/src/Caelestia/service.hpp b/plugin/src/Caelestia/Services/service.hpp index 787818b..787818b 100644 --- a/plugin/src/Caelestia/service.hpp +++ b/plugin/src/Caelestia/Services/service.hpp diff --git a/plugin/src/Caelestia/serviceref.cpp b/plugin/src/Caelestia/Services/serviceref.cpp index dc82811..dc82811 100644 --- a/plugin/src/Caelestia/serviceref.cpp +++ b/plugin/src/Caelestia/Services/serviceref.cpp diff --git a/plugin/src/Caelestia/serviceref.hpp b/plugin/src/Caelestia/Services/serviceref.hpp index 072419e..072419e 100644 --- a/plugin/src/Caelestia/serviceref.hpp +++ b/plugin/src/Caelestia/Services/serviceref.hpp |