From 48f139729f3dc27a0b8e77850c0367876df311ca Mon Sep 17 00:00:00 2001 From: tytan652 Date: Wed, 17 Jan 2024 08:24:40 +0100 Subject: [PATCH] UI,shared: Move Qt Wrappers to its own directory --- UI/adv-audio-control.cpp | 2 +- UI/api-interface.cpp | 2 +- UI/auth-listener.cpp | 2 +- UI/auth-youtube.cpp | 2 +- UI/cmake/legacy.cmake | 17 +++++++++++++---- UI/cmake/ui-elements.cmake | 2 -- UI/cmake/ui-qt.cmake | 6 +++++- UI/context-bar-controls.cpp | 2 +- .../aja-output-ui/CMakeLists.txt | 5 +++++ .../aja-output-ui/cmake/legacy.cmake | 8 +++++--- .../decklink-output-ui/CMakeLists.txt | 5 +++++ .../decklink-output-ui/cmake/legacy.cmake | 8 +++++--- .../frontend-tools/CMakeLists.txt | 5 +++++ .../frontend-tools/cmake/legacy.cmake | 8 +++++--- UI/frontend-plugins/frontend-tools/scripts.cpp | 2 +- UI/hotkey-edit.cpp | 2 +- UI/log-viewer.cpp | 2 +- UI/media-controls.hpp | 2 +- UI/obs-app.cpp | 2 +- UI/platform-windows.cpp | 2 +- UI/properties-view.cpp | 2 +- UI/qt-display.cpp | 2 +- UI/remote-text.cpp | 2 +- UI/source-tree.cpp | 2 +- UI/update/mac-update.cpp | 2 +- UI/update/win-update.cpp | 2 +- UI/visibility-item-widget.cpp | 3 ++- UI/volume-control.cpp | 3 ++- UI/window-basic-about.cpp | 2 +- UI/window-basic-adv-audio.cpp | 2 +- UI/window-basic-auto-config-test.cpp | 2 +- UI/window-basic-auto-config.cpp | 2 +- UI/window-basic-filters.cpp | 2 +- UI/window-basic-interaction.cpp | 2 +- UI/window-basic-main-browser.cpp | 2 +- UI/window-basic-main-dropfiles.cpp | 2 +- UI/window-basic-main-outputs.cpp | 2 +- UI/window-basic-main-profiles.cpp | 2 +- UI/window-basic-main-scene-collections.cpp | 2 +- UI/window-basic-main-screenshot.cpp | 3 ++- UI/window-basic-main-transitions.cpp | 2 +- UI/window-basic-main.cpp | 2 +- UI/window-basic-properties.cpp | 2 +- UI/window-basic-settings-a11y.cpp | 2 +- UI/window-basic-settings-stream.cpp | 2 +- UI/window-basic-settings.cpp | 2 +- UI/window-basic-source-select.cpp | 2 +- UI/window-basic-stats.cpp | 2 +- UI/window-basic-vcam-config.cpp | 2 +- UI/window-extra-browsers.cpp | 2 +- UI/window-importer.cpp | 2 +- UI/window-missing-files.cpp | 2 +- UI/window-namedialog.cpp | 2 +- UI/window-projector.cpp | 2 +- UI/window-remux.cpp | 2 +- UI/window-youtube-actions.cpp | 2 +- UI/youtube-api-wrappers.cpp | 2 +- shared/qt/wrappers/CMakeLists.txt | 11 +++++++++++ {UI => shared/qt/wrappers}/qt-wrappers.cpp | 11 +++++------ {UI => shared/qt/wrappers}/qt-wrappers.hpp | 3 ++- 60 files changed, 117 insertions(+), 71 deletions(-) create mode 100644 shared/qt/wrappers/CMakeLists.txt rename {UI => shared/qt/wrappers}/qt-wrappers.cpp (97%) rename {UI => shared/qt/wrappers}/qt-wrappers.hpp (98%) diff --git a/UI/adv-audio-control.cpp b/UI/adv-audio-control.cpp index 277ac24d4..161534766 100644 --- a/UI/adv-audio-control.cpp +++ b/UI/adv-audio-control.cpp @@ -5,7 +5,7 @@ #include #include #include -#include "qt-wrappers.hpp" +#include #include "obs-app.hpp" #include "adv-audio-control.hpp" #include "window-basic-main.hpp" diff --git a/UI/api-interface.cpp b/UI/api-interface.cpp index 12f036049..691f507c4 100644 --- a/UI/api-interface.cpp +++ b/UI/api-interface.cpp @@ -1,6 +1,6 @@ #include +#include #include "obs-app.hpp" -#include "qt-wrappers.hpp" #include "window-basic-main.hpp" #include "window-basic-main-outputs.hpp" diff --git a/UI/auth-listener.cpp b/UI/auth-listener.cpp index 12a7d72fe..b6c7a9e04 100644 --- a/UI/auth-listener.cpp +++ b/UI/auth-listener.cpp @@ -4,9 +4,9 @@ #include #include #include +#include #include "obs-app.hpp" -#include "qt-wrappers.hpp" #define LOGO_URL "https://obsproject.com/assets/images/new_icon_small-r.png" diff --git a/UI/auth-youtube.cpp b/UI/auth-youtube.cpp index cd07c74cc..d3902da55 100644 --- a/UI/auth-youtube.cpp +++ b/UI/auth-youtube.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #ifdef WIN32 #include @@ -18,7 +19,6 @@ #include "auth-listener.hpp" #include "obs-app.hpp" -#include "qt-wrappers.hpp" #include "ui-config.h" #include "youtube-api-wrappers.hpp" #include "window-basic-main.hpp" diff --git a/UI/cmake/legacy.cmake b/UI/cmake/legacy.cmake index 487c2a5c0..1c82457e4 100644 --- a/UI/cmake/legacy.cmake +++ b/UI/cmake/legacy.cmake @@ -71,6 +71,10 @@ find_package(CURL REQUIRED) add_subdirectory(frontend-plugins) add_executable(obs) +if(NOT TARGET OBS::qt-wrappers) + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers") +endif() + find_qt(COMPONENTS Widgets Network Svg Xml COMPONENTS_LINUX Gui DBus) target_link_libraries(obs PRIVATE Qt::Widgets Qt::Svg Qt::Xml Qt::Network) @@ -147,8 +151,6 @@ target_sources( platform.hpp qt-display.cpp qt-display.hpp - qt-wrappers.cpp - qt-wrappers.hpp ui-validation.cpp ui-validation.hpp multiview.cpp @@ -304,8 +306,15 @@ target_compile_features(obs PRIVATE cxx_std_17) target_include_directories(obs PRIVATE ${CMAKE_SOURCE_DIR}/deps/json11) -target_link_libraries(obs PRIVATE CURL::libcurl FFmpeg::avcodec FFmpeg::avutil FFmpeg::avformat OBS::libobs - OBS::frontend-api) +target_link_libraries( + obs + PRIVATE CURL::libcurl + FFmpeg::avcodec + FFmpeg::avutil + FFmpeg::avformat + OBS::libobs + OBS::frontend-api + OBS::qt-wrappers) set_target_properties(obs PROPERTIES FOLDER "frontend") diff --git a/UI/cmake/ui-elements.cmake b/UI/cmake/ui-elements.cmake index d3f6f44ec..fccdf42a0 100644 --- a/UI/cmake/ui-elements.cmake +++ b/UI/cmake/ui-elements.cmake @@ -14,8 +14,6 @@ target_sources( properties-view.cpp properties-view.hpp properties-view.moc.hpp - qt-wrappers.cpp - qt-wrappers.hpp slider-ignorewheel.cpp slider-ignorewheel.hpp spinbox-ignorewheel.cpp diff --git a/UI/cmake/ui-qt.cmake b/UI/cmake/ui-qt.cmake index 6148fda88..d34de0ad9 100644 --- a/UI/cmake/ui-qt.cmake +++ b/UI/cmake/ui-qt.cmake @@ -8,7 +8,11 @@ if(OS_LINUX find_package(Qt6 REQUIRED Gui DBus) endif() -target_link_libraries(obs-studio PRIVATE Qt::Widgets Qt::Svg Qt::Xml Qt::Network) +if(NOT TARGET OBS::qt-wrappers) + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers") +endif() + +target_link_libraries(obs-studio PRIVATE Qt::Widgets Qt::Svg Qt::Xml Qt::Network OBS::qt-wrappers) set_target_properties( obs-studio diff --git a/UI/context-bar-controls.cpp b/UI/context-bar-controls.cpp index 3eef5188c..cb4b2f8fc 100644 --- a/UI/context-bar-controls.cpp +++ b/UI/context-bar-controls.cpp @@ -1,8 +1,8 @@ #include "window-basic-main.hpp" #include "context-bar-controls.hpp" -#include "qt-wrappers.hpp" #include "obs-app.hpp" +#include #include #include #include diff --git a/UI/frontend-plugins/aja-output-ui/CMakeLists.txt b/UI/frontend-plugins/aja-output-ui/CMakeLists.txt index 56c4be21e..9c7e8c9e6 100644 --- a/UI/frontend-plugins/aja-output-ui/CMakeLists.txt +++ b/UI/frontend-plugins/aja-output-ui/CMakeLists.txt @@ -23,6 +23,10 @@ if(NOT TARGET OBS::aja-support) add_subdirectory("${CMAKE_SOURCE_DIR}/plugins/aja" "${CMAKE_BINARY_DIR}/plugins/aja") endif() +if(NOT TARGET OBS::qt-wrappers) + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers") +endif() + add_library(aja-output-ui MODULE) add_library(OBS::aja-output-ui ALIAS aja-output-ui) @@ -40,6 +44,7 @@ target_link_libraries( PRIVATE OBS::libobs OBS::aja-support OBS::frontend-api + OBS::qt-wrappers OBS::ui-support Qt::Widgets AJA::LibAJANTV2 diff --git a/UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake b/UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake index 3e0a46589..734683488 100644 --- a/UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake +++ b/UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake @@ -9,6 +9,10 @@ find_package(LibAJANTV2 REQUIRED) add_library(aja-output-ui MODULE) add_library(OBS::aja-output-ui ALIAS aja-output-ui) +if(NOT TARGET OBS::qt-wrappers) + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers") +endif() + find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui) set_target_properties( @@ -53,8 +57,6 @@ target_sources( ${CMAKE_SOURCE_DIR}/UI/properties-view.hpp ${CMAKE_SOURCE_DIR}/UI/properties-view.cpp ${CMAKE_SOURCE_DIR}/UI/properties-view.moc.hpp - ${CMAKE_SOURCE_DIR}/UI/qt-wrappers.cpp - ${CMAKE_SOURCE_DIR}/UI/qt-wrappers.hpp ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.cpp ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.cpp @@ -62,7 +64,7 @@ target_sources( ${CMAKE_SOURCE_DIR}/UI/vertical-scroll-area.cpp ${CMAKE_SOURCE_DIR}/UI/vertical-scroll-area.hpp) -target_link_libraries(aja-output-ui PRIVATE OBS::libobs OBS::frontend-api Qt::Widgets AJA::LibAJANTV2) +target_link_libraries(aja-output-ui PRIVATE OBS::libobs OBS::frontend-api OBS::qt-wrappers Qt::Widgets AJA::LibAJANTV2) if(OS_MACOS) find_library(IOKIT_FRAMEWORK Iokit) diff --git a/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt b/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt index 96e5ba281..7bdd668ec 100644 --- a/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt +++ b/UI/frontend-plugins/decklink-output-ui/CMakeLists.txt @@ -20,6 +20,10 @@ endif() add_library(decklink-output-ui MODULE) add_library(OBS::decklink-output-ui ALIAS decklink-output-ui) +if(NOT TARGET OBS::qt-wrappers) + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers") +endif() + target_sources(decklink-output-ui PRIVATE forms/output.ui) target_sources(decklink-output-ui PRIVATE DecklinkOutputUI.cpp DecklinkOutputUI.h decklink-ui-main.cpp @@ -31,6 +35,7 @@ target_link_libraries( decklink-output-ui PRIVATE OBS::libobs OBS::frontend-api + OBS::qt-wrappers OBS::ui-support Qt::Widgets "$<$:$>" diff --git a/UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake b/UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake index 40de2d1eb..709c04788 100644 --- a/UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake +++ b/UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake @@ -7,6 +7,10 @@ endif() add_library(decklink-output-ui MODULE) add_library(OBS::decklink-output-ui ALIAS decklink-output-ui) +if(NOT TARGET OBS::qt-wrappers) + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers") +endif() + find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui) set_target_properties( @@ -35,8 +39,6 @@ target_sources( ${CMAKE_SOURCE_DIR}/UI/properties-view.hpp ${CMAKE_SOURCE_DIR}/UI/properties-view.cpp ${CMAKE_SOURCE_DIR}/UI/properties-view.moc.hpp - ${CMAKE_SOURCE_DIR}/UI/qt-wrappers.hpp - ${CMAKE_SOURCE_DIR}/UI/qt-wrappers.cpp ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.cpp ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.cpp @@ -44,7 +46,7 @@ target_sources( ${CMAKE_SOURCE_DIR}/UI/vertical-scroll-area.hpp ${CMAKE_SOURCE_DIR}/UI/vertical-scroll-area.cpp) -target_link_libraries(decklink-output-ui PRIVATE OBS::libobs OBS::frontend-api Qt::Widgets) +target_link_libraries(decklink-output-ui PRIVATE OBS::libobs OBS::frontend-api OBS::qt-wrappers Qt::Widgets) target_compile_features(decklink-output-ui PRIVATE cxx_std_17) diff --git a/UI/frontend-plugins/frontend-tools/CMakeLists.txt b/UI/frontend-plugins/frontend-tools/CMakeLists.txt index 7db278041..53786eca2 100644 --- a/UI/frontend-plugins/frontend-tools/CMakeLists.txt +++ b/UI/frontend-plugins/frontend-tools/CMakeLists.txt @@ -14,6 +14,10 @@ endif() add_library(frontend-tools MODULE) add_library(OBS::frontend-tools ALIAS frontend-tools) +if(NOT TARGET OBS::qt-wrappers) + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers") +endif() + target_sources( frontend-tools PRIVATE # cmake-format: sortable @@ -45,6 +49,7 @@ target_link_libraries( frontend-tools PRIVATE OBS::frontend-api OBS::libobs + OBS::qt-wrappers OBS::ui-support Qt::Widgets "$<$:$>" diff --git a/UI/frontend-plugins/frontend-tools/cmake/legacy.cmake b/UI/frontend-plugins/frontend-tools/cmake/legacy.cmake index 9ded76029..8eb109023 100644 --- a/UI/frontend-plugins/frontend-tools/cmake/legacy.cmake +++ b/UI/frontend-plugins/frontend-tools/cmake/legacy.cmake @@ -3,6 +3,10 @@ project(frontend-tools) add_library(frontend-tools MODULE) add_library(OBS::frontend-tools ALIAS frontend-tools) +if(NOT TARGET OBS::qt-wrappers) + add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers") +endif() + find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui) set_target_properties( @@ -34,8 +38,6 @@ target_sources( ${CMAKE_SOURCE_DIR}/UI/properties-view.cpp ${CMAKE_SOURCE_DIR}/UI/properties-view.hpp ${CMAKE_SOURCE_DIR}/UI/properties-view.moc.hpp - ${CMAKE_SOURCE_DIR}/UI/qt-wrappers.cpp - ${CMAKE_SOURCE_DIR}/UI/qt-wrappers.hpp ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.cpp ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.cpp @@ -47,7 +49,7 @@ target_sources( target_compile_features(frontend-tools PRIVATE cxx_std_17) -target_link_libraries(frontend-tools PRIVATE OBS::frontend-api OBS::libobs Qt::Widgets) +target_link_libraries(frontend-tools PRIVATE OBS::frontend-api OBS::qt-wrappers OBS::libobs Qt::Widgets) if(OS_POSIX AND NOT OS_MACOS) target_link_libraries(frontend-tools PRIVATE Qt::GuiPrivate) diff --git a/UI/frontend-plugins/frontend-tools/scripts.cpp b/UI/frontend-plugins/frontend-tools/scripts.cpp index 3295de7b7..924efdc52 100644 --- a/UI/frontend-plugins/frontend-tools/scripts.cpp +++ b/UI/frontend-plugins/frontend-tools/scripts.cpp @@ -1,7 +1,6 @@ #include "obs-module.h" #include "scripts.hpp" #include "../../properties-view.hpp" -#include "../../qt-wrappers.hpp" #include "../../plain-text-edit.hpp" #include @@ -18,6 +17,7 @@ #include #include #include +#include #include #include diff --git a/UI/hotkey-edit.cpp b/UI/hotkey-edit.cpp index bcd049428..ebc40361b 100644 --- a/UI/hotkey-edit.cpp +++ b/UI/hotkey-edit.cpp @@ -22,9 +22,9 @@ #include #include #include +#include #include "obs-app.hpp" -#include "qt-wrappers.hpp" void OBSHotkeyEdit::keyPressEvent(QKeyEvent *event) { diff --git a/UI/log-viewer.cpp b/UI/log-viewer.cpp index f02bcd1a5..dedc04f49 100644 --- a/UI/log-viewer.cpp +++ b/UI/log-viewer.cpp @@ -8,9 +8,9 @@ #include #include #include +#include #include "log-viewer.hpp" -#include "qt-wrappers.hpp" OBSLogViewer::OBSLogViewer(QWidget *parent) : QDialog(parent), diff --git a/UI/media-controls.hpp b/UI/media-controls.hpp index 652ddadc4..6a5ec5953 100644 --- a/UI/media-controls.hpp +++ b/UI/media-controls.hpp @@ -4,7 +4,7 @@ #include #include #include -#include "qt-wrappers.hpp" +#include class Ui_MediaControls; diff --git a/UI/obs-app.cpp b/UI/obs-app.cpp index 9a7e9fd10..d2337dae0 100644 --- a/UI/obs-app.cpp +++ b/UI/obs-app.cpp @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -38,7 +39,6 @@ #include #include -#include "qt-wrappers.hpp" #include "obs-app.hpp" #include "obs-proxy-style.hpp" #include "log-viewer.hpp" diff --git a/UI/platform-windows.cpp b/UI/platform-windows.cpp index 303d918a9..229045a64 100644 --- a/UI/platform-windows.cpp +++ b/UI/platform-windows.cpp @@ -19,9 +19,9 @@ #include #include "obs-config.h" #include "obs-app.hpp" -#include "qt-wrappers.hpp" #include "platform.hpp" +#include #include #include diff --git a/UI/properties-view.cpp b/UI/properties-view.cpp index 69f176b14..bd0288b17 100644 --- a/UI/properties-view.cpp +++ b/UI/properties-view.cpp @@ -27,12 +27,12 @@ #include "double-slider.hpp" #include "slider-ignorewheel.hpp" #include "spinbox-ignorewheel.hpp" -#include "qt-wrappers.hpp" #include "properties-view.hpp" #include "properties-view.moc.hpp" #include "plain-text-edit.hpp" #include "obs-app.hpp" +#include #include #include #include diff --git a/UI/qt-display.cpp b/UI/qt-display.cpp index 81652988b..136fbc8f3 100644 --- a/UI/qt-display.cpp +++ b/UI/qt-display.cpp @@ -1,11 +1,11 @@ #include "qt-display.hpp" -#include "qt-wrappers.hpp" #include "display-helpers.hpp" #include #include #include #include +#include #include #ifdef _WIN32 diff --git a/UI/remote-text.cpp b/UI/remote-text.cpp index 4a372e156..a5c6dd013 100644 --- a/UI/remote-text.cpp +++ b/UI/remote-text.cpp @@ -16,8 +16,8 @@ ******************************************************************************/ #include +#include #include "obs-app.hpp" -#include "qt-wrappers.hpp" #include "remote-text.hpp" using namespace std; diff --git a/UI/source-tree.cpp b/UI/source-tree.cpp index 947b217ce..340d6e3b5 100644 --- a/UI/source-tree.cpp +++ b/UI/source-tree.cpp @@ -1,10 +1,10 @@ #include "window-basic-main.hpp" #include "obs-app.hpp" #include "source-tree.hpp" -#include "qt-wrappers.hpp" #include "platform.hpp" #include "source-label.hpp" +#include #include #include diff --git a/UI/update/mac-update.cpp b/UI/update/mac-update.cpp index 469b01e92..c6b35b0e0 100644 --- a/UI/update/mac-update.cpp +++ b/UI/update/mac-update.cpp @@ -1,11 +1,11 @@ #include "update-helpers.hpp" #include "shared-update.hpp" -#include "qt-wrappers.hpp" #include "mac-update.hpp" #include "obs-app.hpp" #include +#include #include /* ------------------------------------------------------------------------ */ diff --git a/UI/update/win-update.cpp b/UI/update/win-update.cpp index 5b21d34d8..a0263ad82 100644 --- a/UI/update/win-update.cpp +++ b/UI/update/win-update.cpp @@ -3,10 +3,10 @@ #include "shared-update.hpp" #include "update-window.hpp" #include "remote-text.hpp" -#include "qt-wrappers.hpp" #include "win-update.hpp" #include "obs-app.hpp" +#include #include #include diff --git a/UI/visibility-item-widget.cpp b/UI/visibility-item-widget.cpp index 23571e9f6..c310007ed 100644 --- a/UI/visibility-item-widget.cpp +++ b/UI/visibility-item-widget.cpp @@ -1,7 +1,8 @@ #include "visibility-item-widget.hpp" -#include "qt-wrappers.hpp" #include "obs-app.hpp" #include "source-label.hpp" + +#include #include #include #include diff --git a/UI/volume-control.cpp b/UI/volume-control.cpp index ab9b7f095..b629d8e67 100644 --- a/UI/volume-control.cpp +++ b/UI/volume-control.cpp @@ -1,10 +1,11 @@ #include "window-basic-main.hpp" #include "volume-control.hpp" -#include "qt-wrappers.hpp" #include "obs-app.hpp" #include "mute-checkbox.hpp" #include "absolute-slider.hpp" #include "source-label.hpp" + +#include #include #include #include diff --git a/UI/window-basic-about.cpp b/UI/window-basic-about.cpp index 10751bb1a..d5bdc3eed 100644 --- a/UI/window-basic-about.cpp +++ b/UI/window-basic-about.cpp @@ -1,7 +1,7 @@ #include "window-basic-about.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" #include "remote-text.hpp" +#include #include #include #include diff --git a/UI/window-basic-adv-audio.cpp b/UI/window-basic-adv-audio.cpp index b2ef201dc..9d80e29ff 100644 --- a/UI/window-basic-adv-audio.cpp +++ b/UI/window-basic-adv-audio.cpp @@ -3,7 +3,7 @@ #include "item-widget-helpers.hpp" #include "adv-audio-control.hpp" #include "obs-app.hpp" -#include "qt-wrappers.hpp" +#include #include "ui_OBSAdvAudio.h" diff --git a/UI/window-basic-auto-config-test.cpp b/UI/window-basic-auto-config-test.cpp index 904875783..117a8bc6d 100644 --- a/UI/window-basic-auto-config-test.cpp +++ b/UI/window-basic-auto-config-test.cpp @@ -8,10 +8,10 @@ #include #include #include +#include #include "window-basic-auto-config.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" #include "obs-app.hpp" #include "ui_AutoConfigTestPage.h" diff --git a/UI/window-basic-auto-config.cpp b/UI/window-basic-auto-config.cpp index 243dce972..555304dae 100644 --- a/UI/window-basic-auto-config.cpp +++ b/UI/window-basic-auto-config.cpp @@ -2,12 +2,12 @@ #include #include +#include #include #include "window-basic-auto-config.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" #include "obs-app.hpp" #include "url-push-button.hpp" diff --git a/UI/window-basic-filters.cpp b/UI/window-basic-filters.cpp index fcab696d6..4d0bf5ea8 100644 --- a/UI/window-basic-filters.cpp +++ b/UI/window-basic-filters.cpp @@ -20,12 +20,12 @@ #include "window-basic-main.hpp" #include "window-basic-filters.hpp" #include "display-helpers.hpp" -#include "qt-wrappers.hpp" #include "visibility-item-widget.hpp" #include "item-widget-helpers.hpp" #include "obs-app.hpp" #include "undo-stack-obs.hpp" +#include #include #include #include diff --git a/UI/window-basic-interaction.cpp b/UI/window-basic-interaction.cpp index 777da9365..2507d7cc4 100644 --- a/UI/window-basic-interaction.cpp +++ b/UI/window-basic-interaction.cpp @@ -18,9 +18,9 @@ #include "obs-app.hpp" #include "window-basic-interaction.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" #include "display-helpers.hpp" +#include #include #include #include diff --git a/UI/window-basic-main-browser.cpp b/UI/window-basic-main-browser.cpp index ec99f141e..24be69fe7 100644 --- a/UI/window-basic-main-browser.cpp +++ b/UI/window-basic-main-browser.cpp @@ -18,8 +18,8 @@ #include #include #include +#include #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" #include diff --git a/UI/window-basic-main-dropfiles.cpp b/UI/window-basic-main-dropfiles.cpp index f8d119b33..880ae3014 100644 --- a/UI/window-basic-main-dropfiles.cpp +++ b/UI/window-basic-main-dropfiles.cpp @@ -9,9 +9,9 @@ #include #endif #include +#include #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" using namespace std; diff --git a/UI/window-basic-main-outputs.cpp b/UI/window-basic-main-outputs.cpp index 9e644e90a..d77d31a69 100644 --- a/UI/window-basic-main-outputs.cpp +++ b/UI/window-basic-main-outputs.cpp @@ -3,7 +3,7 @@ #include #include #include -#include "qt-wrappers.hpp" +#include #include "audio-encoders.hpp" #include "multitrack-video-error.hpp" #include "window-basic-main.hpp" diff --git a/UI/window-basic-main-profiles.cpp b/UI/window-basic-main-profiles.cpp index f9d3f4ea1..08b869aeb 100644 --- a/UI/window-basic-main-profiles.cpp +++ b/UI/window-basic-main-profiles.cpp @@ -21,10 +21,10 @@ #include #include #include +#include #include "window-basic-main.hpp" #include "window-basic-auto-config.hpp" #include "window-namedialog.hpp" -#include "qt-wrappers.hpp" extern void DestroyPanelCookieManager(); extern void DuplicateCurrentCookieProfile(ConfigFile &config); diff --git a/UI/window-basic-main-scene-collections.cpp b/UI/window-basic-main-scene-collections.cpp index 0fe0867ed..26b5506ae 100644 --- a/UI/window-basic-main-scene-collections.cpp +++ b/UI/window-basic-main-scene-collections.cpp @@ -21,11 +21,11 @@ #include #include #include +#include #include "item-widget-helpers.hpp" #include "window-basic-main.hpp" #include "window-importer.hpp" #include "window-namedialog.hpp" -#include "qt-wrappers.hpp" using namespace std; diff --git a/UI/window-basic-main-screenshot.cpp b/UI/window-basic-main-screenshot.cpp index 4a1c20856..ba9c4d2bc 100644 --- a/UI/window-basic-main-screenshot.cpp +++ b/UI/window-basic-main-screenshot.cpp @@ -17,7 +17,8 @@ #include "window-basic-main.hpp" #include "screenshot-obj.hpp" -#include "qt-wrappers.hpp" + +#include #ifdef _WIN32 #include diff --git a/UI/window-basic-main-transitions.cpp b/UI/window-basic-main-transitions.cpp index 2894c6387..304da0d59 100644 --- a/UI/window-basic-main-transitions.cpp +++ b/UI/window-basic-main-transitions.cpp @@ -20,6 +20,7 @@ #include #include #include +#include #include "window-basic-main.hpp" #include "window-basic-main-outputs.hpp" #include "window-basic-vcam-config.hpp" @@ -27,7 +28,6 @@ #include "window-namedialog.hpp" #include "menu-button.hpp" #include "slider-ignorewheel.hpp" -#include "qt-wrappers.hpp" #include "obs-hotkey.h" diff --git a/UI/window-basic-main.cpp b/UI/window-basic-main.cpp index 5c05f4141..94ba8633e 100644 --- a/UI/window-basic-main.cpp +++ b/UI/window-basic-main.cpp @@ -36,6 +36,7 @@ #include #include #include +#include #include #include @@ -67,7 +68,6 @@ #include "window-youtube-actions.hpp" #include "youtube-api-wrappers.hpp" #endif -#include "qt-wrappers.hpp" #include "context-bar-controls.hpp" #include "obs-proxy-style.hpp" #include "display-helpers.hpp" diff --git a/UI/window-basic-properties.cpp b/UI/window-basic-properties.cpp index a10475f23..51a88d481 100644 --- a/UI/window-basic-properties.cpp +++ b/UI/window-basic-properties.cpp @@ -18,10 +18,10 @@ #include "obs-app.hpp" #include "window-basic-properties.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" #include "display-helpers.hpp" #include "properties-view.hpp" +#include #include #include #include diff --git a/UI/window-basic-settings-a11y.cpp b/UI/window-basic-settings-a11y.cpp index ac9de41da..899541d5c 100644 --- a/UI/window-basic-settings-a11y.cpp +++ b/UI/window-basic-settings-a11y.cpp @@ -2,7 +2,7 @@ #include "window-basic-main.hpp" #include "obs-frontend-api.h" #include "obs-app.hpp" -#include "qt-wrappers.hpp" +#include #include enum ColorPreset { diff --git a/UI/window-basic-settings-stream.cpp b/UI/window-basic-settings-stream.cpp index 881e1d542..907a53222 100644 --- a/UI/window-basic-settings-stream.cpp +++ b/UI/window-basic-settings-stream.cpp @@ -1,12 +1,12 @@ #include #include #include +#include #include "window-basic-settings.hpp" #include "obs-frontend-api.h" #include "obs-app.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" #include "url-push-button.hpp" #ifdef BROWSER_AVAILABLE diff --git a/UI/window-basic-settings.cpp b/UI/window-basic-settings.cpp index dfcd2dd65..1f5812b42 100644 --- a/UI/window-basic-settings.cpp +++ b/UI/window-basic-settings.cpp @@ -35,6 +35,7 @@ #include #include #include +#include #include "audio-encoders.hpp" #include "hotkey-edit.hpp" @@ -42,7 +43,6 @@ #include "obs-app.hpp" #include "platform.hpp" #include "properties-view.hpp" -#include "qt-wrappers.hpp" #include "window-basic-main.hpp" #include "window-basic-settings.hpp" #include "window-basic-main-outputs.hpp" diff --git a/UI/window-basic-source-select.cpp b/UI/window-basic-source-select.cpp index a500e3a72..b494e5d28 100644 --- a/UI/window-basic-source-select.cpp +++ b/UI/window-basic-source-select.cpp @@ -16,9 +16,9 @@ ******************************************************************************/ #include +#include #include "window-basic-main.hpp" #include "window-basic-source-select.hpp" -#include "qt-wrappers.hpp" #include "obs-app.hpp" struct AddSourceData { diff --git a/UI/window-basic-stats.cpp b/UI/window-basic-stats.cpp index d403e7179..95ea092ff 100644 --- a/UI/window-basic-stats.cpp +++ b/UI/window-basic-stats.cpp @@ -4,8 +4,8 @@ #include "window-basic-main.hpp" #include "platform.hpp" #include "obs-app.hpp" -#include "qt-wrappers.hpp" +#include #include #include #include diff --git a/UI/window-basic-vcam-config.cpp b/UI/window-basic-vcam-config.cpp index 9cb5d15eb..e8249967d 100644 --- a/UI/window-basic-vcam-config.cpp +++ b/UI/window-basic-vcam-config.cpp @@ -1,7 +1,7 @@ #include "window-basic-vcam-config.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" +#include #include #include diff --git a/UI/window-extra-browsers.cpp b/UI/window-extra-browsers.cpp index 5ee8c686c..ecfe0766f 100644 --- a/UI/window-extra-browsers.cpp +++ b/UI/window-extra-browsers.cpp @@ -1,8 +1,8 @@ #include "window-extra-browsers.hpp" #include "window-dock-browser.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" +#include #include #include #include diff --git a/UI/window-importer.cpp b/UI/window-importer.cpp index ff1d0789f..c5aa05c9f 100644 --- a/UI/window-importer.cpp +++ b/UI/window-importer.cpp @@ -26,8 +26,8 @@ #include #include #include +#include -#include "qt-wrappers.hpp" #include "importers/importers.hpp" extern bool SceneCollectionExists(const char *findName); diff --git a/UI/window-missing-files.cpp b/UI/window-missing-files.cpp index 449e8614d..01eb2977e 100644 --- a/UI/window-missing-files.cpp +++ b/UI/window-missing-files.cpp @@ -24,7 +24,7 @@ #include #include -#include "qt-wrappers.hpp" +#include enum MissingFilesColumn { Source, diff --git a/UI/window-namedialog.cpp b/UI/window-namedialog.cpp index c25cae214..86e54aefe 100644 --- a/UI/window-namedialog.cpp +++ b/UI/window-namedialog.cpp @@ -16,9 +16,9 @@ ******************************************************************************/ #include "window-namedialog.hpp" -#include "qt-wrappers.hpp" #include "obs-app.hpp" +#include #include NameDialog::NameDialog(QWidget *parent) : QDialog(parent) diff --git a/UI/window-projector.cpp b/UI/window-projector.cpp index e61f23182..d5322f547 100644 --- a/UI/window-projector.cpp +++ b/UI/window-projector.cpp @@ -3,10 +3,10 @@ #include #include #include +#include #include "obs-app.hpp" #include "window-basic-main.hpp" #include "display-helpers.hpp" -#include "qt-wrappers.hpp" #include "platform.hpp" #include "multiview.hpp" diff --git a/UI/window-remux.cpp b/UI/window-remux.cpp index 62ded65ac..410ab83d9 100644 --- a/UI/window-remux.cpp +++ b/UI/window-remux.cpp @@ -31,8 +31,8 @@ #include #include #include +#include -#include "qt-wrappers.hpp" #include "window-basic-main.hpp" #include diff --git a/UI/window-youtube-actions.cpp b/UI/window-youtube-actions.cpp index 52d905f91..a76ce4989 100644 --- a/UI/window-youtube-actions.cpp +++ b/UI/window-youtube-actions.cpp @@ -2,9 +2,9 @@ #include "window-youtube-actions.hpp" #include "obs-app.hpp" -#include "qt-wrappers.hpp" #include "youtube-api-wrappers.hpp" +#include #include #include #include diff --git a/UI/youtube-api-wrappers.cpp b/UI/youtube-api-wrappers.cpp index 2582d5ab3..83e6a4899 100644 --- a/UI/youtube-api-wrappers.cpp +++ b/UI/youtube-api-wrappers.cpp @@ -6,11 +6,11 @@ #include #include +#include #include "auth-youtube.hpp" #include "obs-app.hpp" #include "window-basic-main.hpp" -#include "qt-wrappers.hpp" #include "remote-text.hpp" #include "ui-config.h" #include "obf.h" diff --git a/shared/qt/wrappers/CMakeLists.txt b/shared/qt/wrappers/CMakeLists.txt new file mode 100644 index 000000000..e634e6f61 --- /dev/null +++ b/shared/qt/wrappers/CMakeLists.txt @@ -0,0 +1,11 @@ +cmake_minimum_required(VERSION 3.22...3.25) + +find_package(Qt6 REQUIRED Core Widgets) + +add_library(qt-wrappers INTERFACE) +add_library(OBS::qt-wrappers ALIAS qt-wrappers) + +target_sources(qt-wrappers INTERFACE qt-wrappers.cpp qt-wrappers.hpp) +target_include_directories(qt-wrappers INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}") + +target_link_libraries(qt-wrappers INTERFACE Qt::Core Qt::Widgets OBS::libobs) diff --git a/UI/qt-wrappers.cpp b/shared/qt/wrappers/qt-wrappers.cpp similarity index 97% rename from UI/qt-wrappers.cpp rename to shared/qt/wrappers/qt-wrappers.cpp index 3eaac324f..7e016b0d7 100644 --- a/UI/qt-wrappers.cpp +++ b/shared/qt/wrappers/qt-wrappers.cpp @@ -16,7 +16,6 @@ ******************************************************************************/ #include "qt-wrappers.hpp" -#include "obs-app.hpp" #include #include @@ -60,12 +59,12 @@ OBSMessageBox::question(QWidget *parent, const QString &title, if (buttons & QMessageBox::Ok) { QPushButton *button = mb.addButton(QMessageBox::Ok); - button->setText(QTStr("OK")); + button->setText(tr("OK")); } #define add_button(x) \ if (buttons & QMessageBox::x) { \ QPushButton *button = mb.addButton(QMessageBox::x); \ - button->setText(QTStr(#x)); \ + button->setText(tr(#x)); \ } add_button(Open); add_button(Save); @@ -88,7 +87,7 @@ void OBSMessageBox::information(QWidget *parent, const QString &title, { QMessageBox mb(QMessageBox::Information, title, text, QMessageBox::NoButton, parent); - mb.addButton(QTStr("OK"), QMessageBox::AcceptRole); + mb.addButton(tr("OK"), QMessageBox::AcceptRole); mb.exec(); } @@ -99,7 +98,7 @@ void OBSMessageBox::warning(QWidget *parent, const QString &title, parent); if (enableRichText) mb.setTextFormat(Qt::RichText); - mb.addButton(QTStr("OK"), QMessageBox::AcceptRole); + mb.addButton(tr("OK"), QMessageBox::AcceptRole); mb.exec(); } @@ -108,7 +107,7 @@ void OBSMessageBox::critical(QWidget *parent, const QString &title, { QMessageBox mb(QMessageBox::Critical, title, text, QMessageBox::NoButton, parent); - mb.addButton(QTStr("OK"), QMessageBox::AcceptRole); + mb.addButton(tr("OK"), QMessageBox::AcceptRole); mb.exec(); } diff --git a/UI/qt-wrappers.hpp b/shared/qt/wrappers/qt-wrappers.hpp similarity index 98% rename from UI/qt-wrappers.hpp rename to shared/qt/wrappers/qt-wrappers.hpp index 7ad47de27..b3223abb9 100644 --- a/UI/qt-wrappers.hpp +++ b/shared/qt/wrappers/qt-wrappers.hpp @@ -40,7 +40,8 @@ class QString; class QLabel; class QToolBar; -class OBSMessageBox { +class OBSMessageBox : QObject { + Q_OBJECT public: static QMessageBox::StandardButton question(QWidget *parent, const QString &title, const QString &text,