浏览代码

UI,shared: Move SliderIgnoreScroll to its own directory

tytan652 1 年之前
父节点
当前提交
5eb10135da

+ 1 - 1
UI/absolute-slider.hpp

@@ -1,7 +1,7 @@
 #pragma once
 
 #include <QMouseEvent>
-#include "slider-ignorewheel.hpp"
+#include <slider-ignorewheel.hpp>
 
 class AbsoluteSlider : public SliderIgnoreScroll {
 	Q_OBJECT

+ 7 - 3
UI/cmake/legacy.cmake

@@ -75,6 +75,11 @@ if(NOT TARGET OBS::qt-plain-text-edit)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
 endif()
 
+if(NOT TARGET OBS::qt-slider-ignorewheel)
+  add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/slider-ignorewheel"
+                   "${CMAKE_BINARY_DIR}/shared/qt/slider-ignorewheel")
+endif()
+
 if(NOT TARGET OBS::qt-vertical-scroll-area)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/vertical-scroll-area"
                    "${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
@@ -212,8 +217,6 @@ target_sources(
           scene-tree.cpp
           scene-tree.hpp
           screenshot-obj.hpp
-          slider-ignorewheel.cpp
-          slider-ignorewheel.hpp
           source-label.cpp
           source-label.hpp
           spinbox-ignorewheel.cpp
@@ -321,7 +324,8 @@ target_link_libraries(
           OBS::frontend-api
           OBS::qt-wrappers
           OBS::qt-plain-text-edit
-          OBS::qt-vertical-scroll-area)
+          OBS::qt-vertical-scroll-area
+          OBS::qt-slider-ignorewheel)
 
 set_target_properties(obs PROPERTIES FOLDER "frontend")
 

+ 7 - 3
UI/cmake/ui-elements.cmake

@@ -12,8 +12,6 @@ target_sources(
             properties-view.cpp
             properties-view.hpp
             properties-view.moc.hpp
-            slider-ignorewheel.cpp
-            slider-ignorewheel.hpp
             spinbox-ignorewheel.cpp
             spinbox-ignorewheel.hpp)
 
@@ -26,12 +24,18 @@ if(NOT TARGET OBS::qt-plain-text-edit)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
 endif()
 
+if(NOT TARGET OBS::qt-slider-ignorewheel)
+  add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/slider-ignorewheel"
+                   "${CMAKE_BINARY_DIR}/shared/qt/slider-ignorewheel")
+endif()
+
 if(NOT TARGET OBS::qt-vertical-scroll-area)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/vertical-scroll-area"
                    "${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
 endif()
 
-target_link_libraries(obs-studio PRIVATE OBS::qt-plain-text-edit OBS::qt-vertical-scroll-area)
+target_link_libraries(obs-studio PRIVATE OBS::qt-plain-text-edit OBS::qt-slider-ignorewheel
+                                         OBS::qt-vertical-scroll-area)
 
 target_sources(
   obs-studio

+ 1 - 1
UI/double-slider.hpp

@@ -1,7 +1,7 @@
 #pragma once
 
 #include <QSlider>
-#include "slider-ignorewheel.hpp"
+#include <slider-ignorewheel.hpp>
 
 class DoubleSlider : public SliderIgnoreScroll {
 	Q_OBJECT

+ 6 - 0
UI/frontend-plugins/aja-output-ui/CMakeLists.txt

@@ -27,6 +27,11 @@ if(NOT TARGET OBS::qt-plain-text-edit)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
 endif()
 
+if(NOT TARGET OBS::qt-slider-ignorewheel)
+  add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/slider-ignorewheel"
+                   "${CMAKE_BINARY_DIR}/shared/qt/slider-ignorewheel")
+endif()
+
 if(NOT TARGET OBS::qt-vertical-scroll-area)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/vertical-scroll-area"
                    "${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
@@ -54,6 +59,7 @@ target_link_libraries(
           OBS::aja-support
           OBS::frontend-api
           OBS::qt-plain-text-edit
+          OBS::qt-slider-ignorewheel
           OBS::qt-vertical-scroll-area
           OBS::qt-wrappers
           OBS::ui-support

+ 7 - 3
UI/frontend-plugins/aja-output-ui/cmake/legacy.cmake

@@ -13,6 +13,11 @@ if(NOT TARGET OBS::qt-plain-text-edit)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
 endif()
 
+if(NOT TARGET OBS::qt-slider-ignorewheel)
+  add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/slider-ignorewheel"
+                   "${CMAKE_BINARY_DIR}/shared/qt/slider-ignorewheel")
+endif()
+
 if(NOT TARGET OBS::qt-vertical-scroll-area)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/vertical-scroll-area"
                    "${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
@@ -65,9 +70,7 @@ target_sources(
           ${CMAKE_SOURCE_DIR}/UI/properties-view.cpp
           ${CMAKE_SOURCE_DIR}/UI/properties-view.moc.hpp
           ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.cpp
-          ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp
-          ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.cpp
-          ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.hpp)
+          ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp)
 
 target_link_libraries(
   aja-output-ui
@@ -76,6 +79,7 @@ target_link_libraries(
           OBS::qt-wrappers
           OBS::qt-plain-text-edit
           OBS::qt-vertical-scroll-area
+          OBS::qt-slider-ignorewheel
           Qt::Widgets
           AJA::LibAJANTV2)
 

+ 6 - 0
UI/frontend-plugins/decklink-output-ui/CMakeLists.txt

@@ -29,6 +29,11 @@ if(NOT TARGET OBS::qt-vertical-scroll-area)
                    "${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
 endif()
 
+if(NOT TARGET OBS::qt-slider-ignorewheel)
+  add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/slider-ignorewheel"
+                   "${CMAKE_BINARY_DIR}/shared/qt/slider-ignorewheel")
+endif()
+
 if(NOT TARGET OBS::qt-wrappers)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
 endif()
@@ -45,6 +50,7 @@ target_link_libraries(
   PRIVATE OBS::libobs
           OBS::frontend-api
           OBS::qt-plain-text-edit
+          OBS::qt-slider-ignorewheel
           OBS::qt-vertical-scroll-area
           OBS::qt-wrappers
           OBS::ui-support

+ 15 - 5
UI/frontend-plugins/decklink-output-ui/cmake/legacy.cmake

@@ -11,6 +11,11 @@ if(NOT TARGET OBS::qt-plain-text-edit)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
 endif()
 
+if(NOT TARGET OBS::qt-slider-ignorewheel)
+  add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/slider-ignorewheel"
+                   "${CMAKE_BINARY_DIR}/shared/qt/slider-ignorewheel")
+endif()
+
 if(NOT TARGET OBS::qt-vertical-scroll-area)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/vertical-scroll-area"
                    "${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
@@ -47,12 +52,17 @@ target_sources(
           ${CMAKE_SOURCE_DIR}/UI/properties-view.cpp
           ${CMAKE_SOURCE_DIR}/UI/properties-view.moc.hpp
           ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.cpp
-          ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp
-          ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.cpp
-          ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.hpp)
+          ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp)
 
-target_link_libraries(decklink-output-ui PRIVATE OBS::libobs OBS::frontend-api OBS::qt-wrappers OBS::qt-plain-text-edit
-                                                 OBS::qt-vertical-scroll-area Qt::Widgets)
+target_link_libraries(
+  decklink-output-ui
+  PRIVATE OBS::libobs
+          OBS::frontend-api
+          OBS::qt-wrappers
+          OBS::qt-plain-text-edit
+          OBS::qt-vertical-scroll-area
+          OBS::qt-slider-ignorewheel
+          Qt::Widgets)
 
 target_compile_features(decklink-output-ui PRIVATE cxx_std_17)
 

+ 6 - 0
UI/frontend-plugins/frontend-tools/CMakeLists.txt

@@ -23,6 +23,11 @@ if(NOT TARGET OBS::qt-vertical-scroll-area)
                    "${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
 endif()
 
+if(NOT TARGET OBS::qt-slider-ignorewheel)
+  add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/slider-ignorewheel"
+                   "${CMAKE_BINARY_DIR}/shared/qt/slider-ignorewheel")
+endif()
+
 if(NOT TARGET OBS::qt-wrappers)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
 endif()
@@ -59,6 +64,7 @@ target_link_libraries(
   PRIVATE OBS::frontend-api
           OBS::libobs
           OBS::qt-plain-text-edit
+          OBS::qt-slider-ignorewheel
           OBS::qt-vertical-scroll-area
           OBS::qt-wrappers
           OBS::ui-support

+ 15 - 5
UI/frontend-plugins/frontend-tools/cmake/legacy.cmake

@@ -7,6 +7,11 @@ if(NOT TARGET OBS::qt-plain-text-edit)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
 endif()
 
+if(NOT TARGET OBS::qt-slider-ignorewheel)
+  add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/slider-ignorewheel"
+                   "${CMAKE_BINARY_DIR}/shared/qt/slider-ignorewheel")
+endif()
+
 if(NOT TARGET OBS::qt-vertical-scroll-area)
   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/vertical-scroll-area"
                    "${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
@@ -48,14 +53,19 @@ target_sources(
           ${CMAKE_SOURCE_DIR}/UI/properties-view.hpp
           ${CMAKE_SOURCE_DIR}/UI/properties-view.moc.hpp
           ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.cpp
-          ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp
-          ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.cpp
-          ${CMAKE_SOURCE_DIR}/UI/slider-ignorewheel.hpp)
+          ${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp)
 
 target_compile_features(frontend-tools PRIVATE cxx_std_17)
 
-target_link_libraries(frontend-tools PRIVATE OBS::frontend-api OBS::qt-wrappers OBS::qt-plain-text-edit
-                                             OBS::qt-vertical-scroll-area OBS::libobs Qt::Widgets)
+target_link_libraries(
+  frontend-tools
+  PRIVATE OBS::frontend-api
+          OBS::qt-wrappers
+          OBS::qt-plain-text-edit
+          OBS::qt-vertical-scroll-area
+          OBS::qt-slider-ignorewheel
+          OBS::libobs
+          Qt::Widgets)
 
 if(OS_POSIX AND NOT OS_MACOS)
   target_link_libraries(frontend-tools PRIVATE Qt::GuiPrivate)

+ 1 - 0
UI/obs-app.cpp

@@ -31,6 +31,7 @@
 #include <obs-config.h>
 #include <obs.hpp>
 #include <qt-wrappers.hpp>
+#include <slider-ignorewheel.hpp>
 
 #include <QDir>
 #include <QFile>

+ 1 - 1
UI/properties-view.cpp

@@ -25,7 +25,6 @@
 #include <QObject>
 #include <QDesktopServices>
 #include "double-slider.hpp"
-#include "slider-ignorewheel.hpp"
 #include "spinbox-ignorewheel.hpp"
 #include "properties-view.hpp"
 #include "properties-view.moc.hpp"
@@ -33,6 +32,7 @@
 
 #include <qt-wrappers.hpp>
 #include <plain-text-edit.hpp>
+#include <slider-ignorewheel.hpp>
 #include <cstdlib>
 #include <initializer_list>
 #include <obs-data.h>

+ 1 - 0
UI/volume-control.cpp

@@ -5,6 +5,7 @@
 #include "absolute-slider.hpp"
 #include "source-label.hpp"
 
+#include <slider-ignorewheel.hpp>
 #include <qt-wrappers.hpp>
 #include <QFontDatabase>
 #include <QHBoxLayout>

+ 1 - 1
UI/window-basic-main-transitions.cpp

@@ -21,13 +21,13 @@
 #include <QMessageBox>
 #include <util/dstr.hpp>
 #include <qt-wrappers.hpp>
+#include <slider-ignorewheel.hpp>
 #include "window-basic-main.hpp"
 #include "window-basic-main-outputs.hpp"
 #include "window-basic-vcam-config.hpp"
 #include "display-helpers.hpp"
 #include "window-namedialog.hpp"
 #include "menu-button.hpp"
-#include "slider-ignorewheel.hpp"
 
 #include "obs-hotkey.h"
 

+ 11 - 0
shared/qt/slider-ignorewheel/CMakeLists.txt

@@ -0,0 +1,11 @@
+cmake_minimum_required(VERSION 3.22...3.25)
+
+find_package(Qt6 REQUIRED Core Widgets)
+
+add_library(qt-slider-ignorewheel INTERFACE)
+add_library(OBS::qt-slider-ignorewheel ALIAS qt-slider-ignorewheel)
+
+target_sources(qt-slider-ignorewheel INTERFACE slider-ignorewheel.cpp slider-ignorewheel.hpp)
+target_include_directories(qt-slider-ignorewheel INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}")
+
+target_link_libraries(qt-slider-ignorewheel INTERFACE Qt::Core Qt::Widgets OBS::libobs)

+ 0 - 0
UI/slider-ignorewheel.cpp → shared/qt/slider-ignorewheel/slider-ignorewheel.cpp


+ 1 - 1
UI/slider-ignorewheel.hpp → shared/qt/slider-ignorewheel/slider-ignorewheel.hpp

@@ -1,6 +1,6 @@
 #pragma once
 
-#include "obs.hpp"
+#include <obs.hpp>
 #include <QSlider>
 #include <QInputEvent>
 #include <QtCore/QObject>