mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-07-08 12:24:09 +00:00
UI,shared: Move OBSPropertiesView to its own directory
This commit is contained in:
parent
1f477724ef
commit
3572842641
|
@ -71,6 +71,10 @@ find_package(CURL REQUIRED)
|
||||||
add_subdirectory(frontend-plugins)
|
add_subdirectory(frontend-plugins)
|
||||||
add_executable(obs)
|
add_executable(obs)
|
||||||
|
|
||||||
|
if(NOT TARGET OBS::properties-view)
|
||||||
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/properties-view" "${CMAKE_BINARY_DIR}/shared/properties-view")
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-plain-text-edit)
|
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")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
|
||||||
endif()
|
endif()
|
||||||
|
@ -187,8 +191,6 @@ target_sources(
|
||||||
basic-controls.cpp
|
basic-controls.cpp
|
||||||
basic-controls.hpp
|
basic-controls.hpp
|
||||||
clickable-label.hpp
|
clickable-label.hpp
|
||||||
double-slider.cpp
|
|
||||||
double-slider.hpp
|
|
||||||
horizontal-scroll-area.cpp
|
horizontal-scroll-area.cpp
|
||||||
horizontal-scroll-area.hpp
|
horizontal-scroll-area.hpp
|
||||||
item-widget-helpers.cpp
|
item-widget-helpers.cpp
|
||||||
|
@ -209,9 +211,6 @@ target_sources(
|
||||||
menu-button.hpp
|
menu-button.hpp
|
||||||
mute-checkbox.hpp
|
mute-checkbox.hpp
|
||||||
noncheckable-button.hpp
|
noncheckable-button.hpp
|
||||||
properties-view.cpp
|
|
||||||
properties-view.hpp
|
|
||||||
properties-view.moc.hpp
|
|
||||||
remote-text.cpp
|
remote-text.cpp
|
||||||
remote-text.hpp
|
remote-text.hpp
|
||||||
scene-tree.cpp
|
scene-tree.cpp
|
||||||
|
@ -219,8 +218,6 @@ target_sources(
|
||||||
screenshot-obj.hpp
|
screenshot-obj.hpp
|
||||||
source-label.cpp
|
source-label.cpp
|
||||||
source-label.hpp
|
source-label.hpp
|
||||||
spinbox-ignorewheel.cpp
|
|
||||||
spinbox-ignorewheel.hpp
|
|
||||||
source-tree.cpp
|
source-tree.cpp
|
||||||
source-tree.hpp
|
source-tree.hpp
|
||||||
url-push-button.cpp
|
url-push-button.cpp
|
||||||
|
@ -327,7 +324,8 @@ target_link_libraries(
|
||||||
OBS::qt-wrappers
|
OBS::qt-wrappers
|
||||||
OBS::qt-plain-text-edit
|
OBS::qt-plain-text-edit
|
||||||
OBS::qt-vertical-scroll-area
|
OBS::qt-vertical-scroll-area
|
||||||
OBS::qt-slider-ignorewheel)
|
OBS::qt-slider-ignorewheel
|
||||||
|
OBS::properties-view)
|
||||||
|
|
||||||
set_target_properties(obs PROPERTIES FOLDER "frontend")
|
set_target_properties(obs PROPERTIES FOLDER "frontend")
|
||||||
|
|
||||||
|
|
|
@ -1,25 +1,18 @@
|
||||||
add_library(obs-ui-support INTERFACE)
|
add_library(obs-ui-support INTERFACE)
|
||||||
add_library(OBS::ui-support ALIAS obs-ui-support)
|
add_library(OBS::ui-support ALIAS obs-ui-support)
|
||||||
|
|
||||||
target_sources(
|
target_sources(obs-ui-support INTERFACE # cmake-format: sortable
|
||||||
obs-ui-support
|
clickable-label.hpp horizontal-scroll-area.cpp horizontal-scroll-area.hpp)
|
||||||
INTERFACE # cmake-format: sortable
|
|
||||||
clickable-label.hpp
|
|
||||||
double-slider.cpp
|
|
||||||
double-slider.hpp
|
|
||||||
horizontal-scroll-area.cpp
|
|
||||||
horizontal-scroll-area.hpp
|
|
||||||
properties-view.cpp
|
|
||||||
properties-view.hpp
|
|
||||||
properties-view.moc.hpp
|
|
||||||
spinbox-ignorewheel.cpp
|
|
||||||
spinbox-ignorewheel.hpp)
|
|
||||||
|
|
||||||
target_include_directories(obs-ui-support INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}")
|
target_include_directories(obs-ui-support INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||||
target_compile_options(obs-ui-support INTERFACE $<$<PLATFORM_ID:Linux>:-Wno-error=enum-conversion>)
|
target_compile_options(obs-ui-support INTERFACE $<$<PLATFORM_ID:Linux>:-Wno-error=enum-conversion>)
|
||||||
|
|
||||||
target_link_libraries(obs-studio PRIVATE OBS::ui-support)
|
target_link_libraries(obs-studio PRIVATE OBS::ui-support)
|
||||||
|
|
||||||
|
if(NOT TARGET OBS::properties-view)
|
||||||
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/properties-view" "${CMAKE_BINARY_DIR}/shared/properties-view")
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-plain-text-edit)
|
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")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
|
||||||
endif()
|
endif()
|
||||||
|
@ -34,7 +27,7 @@ if(NOT TARGET OBS::qt-vertical-scroll-area)
|
||||||
"${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
|
"${CMAKE_BINARY_DIR}/shared/qt/vertical-scroll-area")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(obs-studio PRIVATE OBS::qt-plain-text-edit OBS::qt-slider-ignorewheel
|
target_link_libraries(obs-studio PRIVATE OBS::properties-view OBS::qt-plain-text-edit OBS::qt-slider-ignorewheel
|
||||||
OBS::qt-vertical-scroll-area)
|
OBS::qt-vertical-scroll-area)
|
||||||
|
|
||||||
target_sources(
|
target_sources(
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <QDialog>
|
#include <QDialog>
|
||||||
|
#include <properties-view.hpp>
|
||||||
|
|
||||||
#include "ui_output.h"
|
#include "ui_output.h"
|
||||||
#include "../../UI/properties-view.hpp"
|
|
||||||
|
|
||||||
namespace aja {
|
namespace aja {
|
||||||
class CardManager;
|
class CardManager;
|
||||||
|
|
|
@ -23,22 +23,8 @@ if(NOT TARGET OBS::aja-support)
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/plugins/aja" "${CMAKE_BINARY_DIR}/plugins/aja")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/plugins/aja" "${CMAKE_BINARY_DIR}/plugins/aja")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-plain-text-edit)
|
if(NOT TARGET OBS::properties-view)
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/properties-view" "${CMAKE_BINARY_DIR}/shared/properties-view")
|
||||||
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()
|
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-wrappers)
|
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(aja-output-ui MODULE)
|
add_library(aja-output-ui MODULE)
|
||||||
|
@ -58,11 +44,7 @@ target_link_libraries(
|
||||||
PRIVATE OBS::libobs
|
PRIVATE OBS::libobs
|
||||||
OBS::aja-support
|
OBS::aja-support
|
||||||
OBS::frontend-api
|
OBS::frontend-api
|
||||||
OBS::qt-plain-text-edit
|
OBS::properties-view
|
||||||
OBS::qt-slider-ignorewheel
|
|
||||||
OBS::qt-vertical-scroll-area
|
|
||||||
OBS::qt-wrappers
|
|
||||||
OBS::ui-support
|
|
||||||
Qt::Widgets
|
Qt::Widgets
|
||||||
AJA::LibAJANTV2
|
AJA::LibAJANTV2
|
||||||
$<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD>:X11::X11>
|
$<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD>:X11::X11>
|
||||||
|
|
|
@ -9,22 +9,8 @@ find_package(LibAJANTV2 REQUIRED)
|
||||||
add_library(aja-output-ui MODULE)
|
add_library(aja-output-ui MODULE)
|
||||||
add_library(OBS::aja-output-ui ALIAS aja-output-ui)
|
add_library(OBS::aja-output-ui ALIAS aja-output-ui)
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-plain-text-edit)
|
if(NOT TARGET OBS::properties-view)
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/properties-view" "${CMAKE_BINARY_DIR}/shared/properties-view")
|
||||||
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()
|
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-wrappers)
|
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui)
|
find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui)
|
||||||
|
@ -63,24 +49,9 @@ target_sources(
|
||||||
${CMAKE_SOURCE_DIR}/plugins/aja/aja-vpid-data.cpp
|
${CMAKE_SOURCE_DIR}/plugins/aja/aja-vpid-data.cpp
|
||||||
${CMAKE_SOURCE_DIR}/plugins/aja/aja-vpid-data.hpp
|
${CMAKE_SOURCE_DIR}/plugins/aja/aja-vpid-data.hpp
|
||||||
${CMAKE_SOURCE_DIR}/plugins/aja/aja-widget-io.cpp
|
${CMAKE_SOURCE_DIR}/plugins/aja/aja-widget-io.cpp
|
||||||
${CMAKE_SOURCE_DIR}/plugins/aja/aja-widget-io.hpp
|
${CMAKE_SOURCE_DIR}/plugins/aja/aja-widget-io.hpp)
|
||||||
${CMAKE_SOURCE_DIR}/UI/double-slider.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/UI/double-slider.hpp
|
|
||||||
${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/spinbox-ignorewheel.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp)
|
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(aja-output-ui PRIVATE OBS::libobs OBS::frontend-api OBS::properties-view Qt::Widgets
|
||||||
aja-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
|
|
||||||
AJA::LibAJANTV2)
|
AJA::LibAJANTV2)
|
||||||
|
|
||||||
if(OS_MACOS)
|
if(OS_MACOS)
|
||||||
|
|
|
@ -20,22 +20,8 @@ endif()
|
||||||
add_library(decklink-output-ui MODULE)
|
add_library(decklink-output-ui MODULE)
|
||||||
add_library(OBS::decklink-output-ui ALIAS decklink-output-ui)
|
add_library(OBS::decklink-output-ui ALIAS decklink-output-ui)
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-plain-text-edit)
|
if(NOT TARGET OBS::properties-view)
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/properties-view" "${CMAKE_BINARY_DIR}/shared/properties-view")
|
||||||
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()
|
|
||||||
|
|
||||||
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()
|
endif()
|
||||||
|
|
||||||
target_sources(decklink-output-ui PRIVATE forms/output.ui)
|
target_sources(decklink-output-ui PRIVATE forms/output.ui)
|
||||||
|
@ -49,11 +35,7 @@ target_link_libraries(
|
||||||
decklink-output-ui
|
decklink-output-ui
|
||||||
PRIVATE OBS::libobs
|
PRIVATE OBS::libobs
|
||||||
OBS::frontend-api
|
OBS::frontend-api
|
||||||
OBS::qt-plain-text-edit
|
OBS::properties-view
|
||||||
OBS::qt-slider-ignorewheel
|
|
||||||
OBS::qt-vertical-scroll-area
|
|
||||||
OBS::qt-wrappers
|
|
||||||
OBS::ui-support
|
|
||||||
Qt::Widgets
|
Qt::Widgets
|
||||||
"$<$<PLATFORM_ID:Darwin>:$<LINK_LIBRARY:FRAMEWORK,Cocoa.framework>>"
|
"$<$<PLATFORM_ID:Darwin>:$<LINK_LIBRARY:FRAMEWORK,Cocoa.framework>>"
|
||||||
$<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD>:X11::X11>
|
$<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD>:X11::X11>
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <QDialog>
|
#include <QDialog>
|
||||||
|
#include <properties-view.hpp>
|
||||||
|
|
||||||
#include "ui_output.h"
|
#include "ui_output.h"
|
||||||
#include "../../UI/properties-view.hpp"
|
|
||||||
|
|
||||||
class DecklinkOutputUI : public QDialog {
|
class DecklinkOutputUI : public QDialog {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
|
@ -7,22 +7,8 @@ endif()
|
||||||
add_library(decklink-output-ui MODULE)
|
add_library(decklink-output-ui MODULE)
|
||||||
add_library(OBS::decklink-output-ui ALIAS decklink-output-ui)
|
add_library(OBS::decklink-output-ui ALIAS decklink-output-ui)
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-plain-text-edit)
|
if(NOT TARGET OBS::properties-view)
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/properties-view" "${CMAKE_BINARY_DIR}/shared/properties-view")
|
||||||
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()
|
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-wrappers)
|
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui)
|
find_qt(COMPONENTS Widgets COMPONENTS_LINUX Gui)
|
||||||
|
@ -40,29 +26,10 @@ endif()
|
||||||
|
|
||||||
target_sources(decklink-output-ui PRIVATE forms/output.ui)
|
target_sources(decklink-output-ui PRIVATE forms/output.ui)
|
||||||
|
|
||||||
target_sources(
|
target_sources(decklink-output-ui PRIVATE DecklinkOutputUI.cpp DecklinkOutputUI.h decklink-ui-main.cpp
|
||||||
decklink-output-ui
|
decklink-ui-main.h)
|
||||||
PRIVATE DecklinkOutputUI.cpp
|
|
||||||
DecklinkOutputUI.h
|
|
||||||
decklink-ui-main.cpp
|
|
||||||
decklink-ui-main.h
|
|
||||||
${CMAKE_SOURCE_DIR}/UI/double-slider.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/UI/double-slider.hpp
|
|
||||||
${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/spinbox-ignorewheel.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp)
|
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(decklink-output-ui PRIVATE OBS::libobs OBS::frontend-api OBS::properties-view Qt::Widgets)
|
||||||
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)
|
target_compile_features(decklink-output-ui PRIVATE cxx_std_17)
|
||||||
|
|
||||||
|
|
|
@ -14,20 +14,14 @@ endif()
|
||||||
add_library(frontend-tools MODULE)
|
add_library(frontend-tools MODULE)
|
||||||
add_library(OBS::frontend-tools ALIAS frontend-tools)
|
add_library(OBS::frontend-tools ALIAS frontend-tools)
|
||||||
|
|
||||||
|
if(NOT TARGET OBS::properties-view)
|
||||||
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/properties-view" "${CMAKE_BINARY_DIR}/shared/properties-view")
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-plain-text-edit)
|
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")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
|
||||||
endif()
|
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()
|
|
||||||
|
|
||||||
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)
|
if(NOT TARGET OBS::qt-wrappers)
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
|
||||||
endif()
|
endif()
|
||||||
|
@ -63,11 +57,9 @@ target_link_libraries(
|
||||||
frontend-tools
|
frontend-tools
|
||||||
PRIVATE OBS::frontend-api
|
PRIVATE OBS::frontend-api
|
||||||
OBS::libobs
|
OBS::libobs
|
||||||
|
OBS::properties-view
|
||||||
OBS::qt-plain-text-edit
|
OBS::qt-plain-text-edit
|
||||||
OBS::qt-slider-ignorewheel
|
|
||||||
OBS::qt-vertical-scroll-area
|
|
||||||
OBS::qt-wrappers
|
OBS::qt-wrappers
|
||||||
OBS::ui-support
|
|
||||||
Qt::Widgets
|
Qt::Widgets
|
||||||
"$<$<PLATFORM_ID:Darwin>:$<LINK_LIBRARY:FRAMEWORK,Cocoa>>"
|
"$<$<PLATFORM_ID:Darwin>:$<LINK_LIBRARY:FRAMEWORK,Cocoa>>"
|
||||||
$<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD>:X11::X11>
|
$<$<PLATFORM_ID:Linux,FreeBSD,OpenBSD>:X11::X11>
|
||||||
|
|
|
@ -3,20 +3,14 @@ project(frontend-tools)
|
||||||
add_library(frontend-tools MODULE)
|
add_library(frontend-tools MODULE)
|
||||||
add_library(OBS::frontend-tools ALIAS frontend-tools)
|
add_library(OBS::frontend-tools ALIAS frontend-tools)
|
||||||
|
|
||||||
|
if(NOT TARGET OBS::properties-view)
|
||||||
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/properties-view" "${CMAKE_BINARY_DIR}/shared/properties-view")
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-plain-text-edit)
|
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")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/plain-text-edit" "${CMAKE_BINARY_DIR}/shared/qt/plain-text-edit")
|
||||||
endif()
|
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()
|
|
||||||
|
|
||||||
if(NOT TARGET OBS::qt-wrappers)
|
if(NOT TARGET OBS::qt-wrappers)
|
||||||
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
|
||||||
endif()
|
endif()
|
||||||
|
@ -37,33 +31,13 @@ endif()
|
||||||
target_sources(frontend-tools PRIVATE forms/auto-scene-switcher.ui forms/captions.ui forms/output-timer.ui
|
target_sources(frontend-tools PRIVATE forms/auto-scene-switcher.ui forms/captions.ui forms/output-timer.ui
|
||||||
forms/scripts.ui)
|
forms/scripts.ui)
|
||||||
|
|
||||||
target_sources(
|
target_sources(frontend-tools PRIVATE frontend-tools.c auto-scene-switcher.hpp auto-scene-switcher.cpp output-timer.hpp
|
||||||
frontend-tools
|
tool-helpers.hpp output-timer.cpp)
|
||||||
PRIVATE frontend-tools.c
|
|
||||||
auto-scene-switcher.hpp
|
|
||||||
auto-scene-switcher.cpp
|
|
||||||
output-timer.hpp
|
|
||||||
tool-helpers.hpp
|
|
||||||
output-timer.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/UI/double-slider.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/UI/double-slider.hpp
|
|
||||||
${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/spinbox-ignorewheel.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/UI/spinbox-ignorewheel.hpp)
|
|
||||||
|
|
||||||
target_compile_features(frontend-tools PRIVATE cxx_std_17)
|
target_compile_features(frontend-tools PRIVATE cxx_std_17)
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(frontend-tools PRIVATE OBS::frontend-api OBS::qt-wrappers OBS::qt-plain-text-edit
|
||||||
frontend-tools
|
OBS::properties-view OBS::libobs Qt::Widgets)
|
||||||
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)
|
if(OS_POSIX AND NOT OS_MACOS)
|
||||||
target_link_libraries(frontend-tools PRIVATE Qt::GuiPrivate)
|
target_link_libraries(frontend-tools PRIVATE Qt::GuiPrivate)
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#include "obs-module.h"
|
#include "obs-module.h"
|
||||||
#include "scripts.hpp"
|
#include "scripts.hpp"
|
||||||
#include "../../properties-view.hpp"
|
|
||||||
|
|
||||||
#include <QFileDialog>
|
#include <QFileDialog>
|
||||||
#include <QHBoxLayout>
|
#include <QHBoxLayout>
|
||||||
|
@ -18,6 +17,7 @@
|
||||||
#include <QDesktopServices>
|
#include <QDesktopServices>
|
||||||
#include <qt-wrappers.hpp>
|
#include <qt-wrappers.hpp>
|
||||||
#include <plain-text-edit.hpp>
|
#include <plain-text-edit.hpp>
|
||||||
|
#include <properties-view.hpp>
|
||||||
|
|
||||||
#include <obs.hpp>
|
#include <obs.hpp>
|
||||||
#include <obs-module.h>
|
#include <obs-module.h>
|
||||||
|
|
|
@ -21,8 +21,7 @@
|
||||||
#include <QDialogButtonBox>
|
#include <QDialogButtonBox>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <obs.hpp>
|
#include <obs.hpp>
|
||||||
|
#include <properties-view.hpp>
|
||||||
#include "properties-view.hpp"
|
|
||||||
|
|
||||||
class OBSBasic;
|
class OBSBasic;
|
||||||
class QMenu;
|
class QMenu;
|
||||||
|
|
|
@ -22,8 +22,7 @@
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
|
||||||
#include <obs.hpp>
|
#include <obs.hpp>
|
||||||
|
#include <properties-view.hpp>
|
||||||
#include "properties-view.hpp"
|
|
||||||
|
|
||||||
class OBSBasic;
|
class OBSBasic;
|
||||||
|
|
||||||
|
|
|
@ -19,9 +19,9 @@
|
||||||
#include "window-basic-properties.hpp"
|
#include "window-basic-properties.hpp"
|
||||||
#include "window-basic-main.hpp"
|
#include "window-basic-main.hpp"
|
||||||
#include "display-helpers.hpp"
|
#include "display-helpers.hpp"
|
||||||
#include "properties-view.hpp"
|
|
||||||
|
|
||||||
#include <qt-wrappers.hpp>
|
#include <qt-wrappers.hpp>
|
||||||
|
#include <properties-view.hpp>
|
||||||
#include <QCloseEvent>
|
#include <QCloseEvent>
|
||||||
#include <QScreen>
|
#include <QScreen>
|
||||||
#include <QWindow>
|
#include <QWindow>
|
||||||
|
|
51
shared/properties-view/CMakeLists.txt
Normal file
51
shared/properties-view/CMakeLists.txt
Normal file
|
@ -0,0 +1,51 @@
|
||||||
|
cmake_minimum_required(VERSION 3.22...3.25)
|
||||||
|
|
||||||
|
find_package(Qt6 REQUIRED Core Widgets)
|
||||||
|
|
||||||
|
if(NOT TARGET OBS::qt-wrappers)
|
||||||
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/qt/wrappers" "${CMAKE_BINARY_DIR}/shared/qt/wrappers")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
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-vertical-scroll-area)
|
||||||
|
add_subdirectory("${CMAKE_SOURCE_DIR}/shared/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()
|
||||||
|
|
||||||
|
add_library(properties-view INTERFACE)
|
||||||
|
add_library(OBS::properties-view ALIAS properties-view)
|
||||||
|
|
||||||
|
target_sources(
|
||||||
|
properties-view
|
||||||
|
INTERFACE # cmake-format: sortable
|
||||||
|
double-slider.cpp
|
||||||
|
double-slider.hpp
|
||||||
|
properties-view.cpp
|
||||||
|
properties-view.hpp
|
||||||
|
properties-view.moc.hpp
|
||||||
|
spinbox-ignorewheel.cpp
|
||||||
|
spinbox-ignorewheel.hpp)
|
||||||
|
target_include_directories(properties-view INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||||
|
|
||||||
|
if(OS_LINUX AND Qt6_VERSION VERSION_LESS 6.3)
|
||||||
|
target_compile_options(properties-view INTERFACE -Wno-error=enum-conversion)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
target_link_libraries(
|
||||||
|
properties-view
|
||||||
|
INTERFACE OBS::frontend-api
|
||||||
|
OBS::libobs
|
||||||
|
OBS::qt-wrappers
|
||||||
|
OBS::qt-plain-text-edit
|
||||||
|
OBS::qt-vertical-scroll-area
|
||||||
|
OBS::qt-slider-ignorewheel
|
||||||
|
Qt::Core
|
||||||
|
Qt::Widgets)
|
|
@ -28,7 +28,6 @@
|
||||||
#include "spinbox-ignorewheel.hpp"
|
#include "spinbox-ignorewheel.hpp"
|
||||||
#include "properties-view.hpp"
|
#include "properties-view.hpp"
|
||||||
#include "properties-view.moc.hpp"
|
#include "properties-view.moc.hpp"
|
||||||
#include "obs-app.hpp"
|
|
||||||
|
|
||||||
#include <qt-wrappers.hpp>
|
#include <qt-wrappers.hpp>
|
||||||
#include <plain-text-edit.hpp>
|
#include <plain-text-edit.hpp>
|
||||||
|
@ -39,6 +38,7 @@
|
||||||
#include <obs.h>
|
#include <obs.h>
|
||||||
#include <qtimer.h>
|
#include <qtimer.h>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#include <obs-frontend-api.h>
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
|
@ -106,7 +106,7 @@ void OBSPropertiesView::ReloadProperties()
|
||||||
RefreshProperties();
|
RefreshProperties();
|
||||||
}
|
}
|
||||||
|
|
||||||
#define NO_PROPERTIES_STRING QTStr("Basic.PropertiesWindow.NoProperties")
|
#define NO_PROPERTIES_STRING QObject::tr("Basic.PropertiesWindow.NoProperties")
|
||||||
|
|
||||||
void OBSPropertiesView::RefreshProperties()
|
void OBSPropertiesView::RefreshProperties()
|
||||||
{
|
{
|
||||||
|
@ -306,7 +306,7 @@ QWidget *OBSPropertiesView::AddText(obs_property_t *prop, QFormLayout *layout,
|
||||||
QLineEdit *edit = new QLineEdit();
|
QLineEdit *edit = new QLineEdit();
|
||||||
QPushButton *show = new QPushButton();
|
QPushButton *show = new QPushButton();
|
||||||
|
|
||||||
show->setText(QTStr("Show"));
|
show->setText(tr("Show"));
|
||||||
show->setCheckable(true);
|
show->setCheckable(true);
|
||||||
edit->setText(QT_UTF8(val));
|
edit->setText(QT_UTF8(val));
|
||||||
edit->setEchoMode(QLineEdit::Password);
|
edit->setEchoMode(QLineEdit::Password);
|
||||||
|
@ -318,7 +318,7 @@ QWidget *OBSPropertiesView::AddText(obs_property_t *prop, QFormLayout *layout,
|
||||||
connect(show, &QAbstractButton::toggled, info,
|
connect(show, &QAbstractButton::toggled, info,
|
||||||
&WidgetInfo::TogglePasswordText);
|
&WidgetInfo::TogglePasswordText);
|
||||||
connect(show, &QAbstractButton::toggled, [=](bool hide) {
|
connect(show, &QAbstractButton::toggled, [=](bool hide) {
|
||||||
show->setText(hide ? QTStr("Hide") : QTStr("Show"));
|
show->setText(hide ? tr("Hide") : tr("Show"));
|
||||||
});
|
});
|
||||||
children.emplace_back(info);
|
children.emplace_back(info);
|
||||||
|
|
||||||
|
@ -345,7 +345,7 @@ QWidget *OBSPropertiesView::AddText(obs_property_t *prop, QFormLayout *layout,
|
||||||
label = new QLabel(desc);
|
label = new QLabel(desc);
|
||||||
|
|
||||||
if (long_desc != NULL && !info_label->text().isEmpty()) {
|
if (long_desc != NULL && !info_label->text().isEmpty()) {
|
||||||
QString file = !App()->IsThemeDark()
|
QString file = !obs_frontend_is_theme_dark()
|
||||||
? ":/res/images/help.svg"
|
? ":/res/images/help.svg"
|
||||||
: ":/res/images/help_light.svg";
|
: ":/res/images/help_light.svg";
|
||||||
QString lStr = "<html>%1 <img src='%2' style=' \
|
QString lStr = "<html>%1 <img src='%2' style=' \
|
||||||
|
@ -391,7 +391,7 @@ void OBSPropertiesView::AddPath(obs_property_t *prop, QFormLayout *layout,
|
||||||
const char *val = obs_data_get_string(settings, name);
|
const char *val = obs_data_get_string(settings, name);
|
||||||
QLayout *subLayout = new QHBoxLayout();
|
QLayout *subLayout = new QHBoxLayout();
|
||||||
QLineEdit *edit = new QLineEdit();
|
QLineEdit *edit = new QLineEdit();
|
||||||
QPushButton *button = new QPushButton(QTStr("Browse"));
|
QPushButton *button = new QPushButton(tr("Browse"));
|
||||||
|
|
||||||
if (!obs_property_enabled(prop)) {
|
if (!obs_property_enabled(prop)) {
|
||||||
edit->setEnabled(false);
|
edit->setEnabled(false);
|
||||||
|
@ -682,8 +682,8 @@ QWidget *OBSPropertiesView::AddList(obs_property_t *prop, bool &warning)
|
||||||
if (id != -1 && id != idx) {
|
if (id != -1 && id != idx) {
|
||||||
QString actual = combo->itemText(id);
|
QString actual = combo->itemText(id);
|
||||||
QString selected = combo->itemText(idx);
|
QString selected = combo->itemText(idx);
|
||||||
QString combined = QTStr(
|
QString combined =
|
||||||
"Basic.PropertiesWindow.AutoSelectFormat");
|
tr("Basic.PropertiesWindow.AutoSelectFormat");
|
||||||
combo->setItemText(idx,
|
combo->setItemText(idx,
|
||||||
combined.arg(selected).arg(actual));
|
combined.arg(selected).arg(actual));
|
||||||
}
|
}
|
||||||
|
@ -797,7 +797,7 @@ void OBSPropertiesView::AddColorInternal(obs_property_t *prop,
|
||||||
}
|
}
|
||||||
|
|
||||||
button->setProperty("themeID", "settingsButtons");
|
button->setProperty("themeID", "settingsButtons");
|
||||||
button->setText(QTStr("Basic.PropertiesWindow.SelectColor"));
|
button->setText(tr("Basic.PropertiesWindow.SelectColor"));
|
||||||
button->setToolTip(QT_UTF8(obs_property_long_description(prop)));
|
button->setToolTip(QT_UTF8(obs_property_long_description(prop)));
|
||||||
|
|
||||||
if (supportAlpha) {
|
if (supportAlpha) {
|
||||||
|
@ -899,7 +899,7 @@ void OBSPropertiesView::AddFont(obs_property_t *prop, QFormLayout *layout,
|
||||||
MakeQFont(font_obj, font, true);
|
MakeQFont(font_obj, font, true);
|
||||||
|
|
||||||
button->setProperty("themeID", "settingsButtons");
|
button->setProperty("themeID", "settingsButtons");
|
||||||
button->setText(QTStr("Basic.PropertiesWindow.SelectFont"));
|
button->setText(tr("Basic.PropertiesWindow.SelectFont"));
|
||||||
button->setToolTip(QT_UTF8(obs_property_long_description(prop)));
|
button->setToolTip(QT_UTF8(obs_property_long_description(prop)));
|
||||||
|
|
||||||
fontLabel->setFrameStyle(QFrame::Sunken | QFrame::Panel);
|
fontLabel->setFrameStyle(QFrame::Sunken | QFrame::Panel);
|
||||||
|
@ -1165,7 +1165,7 @@ static QWidget *CreateRationalFPS(OBSFrameRatePropertyWidget *fpsProps,
|
||||||
layout->setContentsMargins(0, 0, 0, 0);
|
layout->setContentsMargins(0, 0, 0, 0);
|
||||||
layout->setSpacing(4);
|
layout->setSpacing(4);
|
||||||
|
|
||||||
auto str = QTStr("Basic.PropertiesView.FPS.ValidFPSRanges");
|
auto str = QObject::tr("Basic.PropertiesView.FPS.ValidFPSRanges");
|
||||||
auto rlabel = new QLabel{str};
|
auto rlabel = new QLabel{str};
|
||||||
|
|
||||||
auto combo = fpsProps->fpsRange = new QComboBox();
|
auto combo = fpsProps->fpsRange = new QComboBox();
|
||||||
|
@ -1200,8 +1200,9 @@ static QWidget *CreateRationalFPS(OBSFrameRatePropertyWidget *fpsProps,
|
||||||
den_edit->setValue(current_fps->denominator);
|
den_edit->setValue(current_fps->denominator);
|
||||||
}
|
}
|
||||||
|
|
||||||
layout->addRow(QTStr("Basic.Settings.Video.Numerator"), num_edit);
|
layout->addRow(QObject::tr("Basic.Settings.Video.Numerator"), num_edit);
|
||||||
layout->addRow(QTStr("Basic.Settings.Video.Denominator"), den_edit);
|
layout->addRow(QObject::tr("Basic.Settings.Video.Denominator"),
|
||||||
|
den_edit);
|
||||||
|
|
||||||
widget->setLayout(layout);
|
widget->setLayout(layout);
|
||||||
|
|
||||||
|
@ -1220,9 +1221,9 @@ CreateFrameRateWidget(obs_property_t *prop, bool &warning, const char *option,
|
||||||
swap(widget->fps_ranges, fps_ranges);
|
swap(widget->fps_ranges, fps_ranges);
|
||||||
|
|
||||||
auto combo = widget->modeSelect = new QComboBox();
|
auto combo = widget->modeSelect = new QComboBox();
|
||||||
combo->addItem(QTStr("Basic.PropertiesView.FPS.Simple"),
|
combo->addItem(QObject::tr("Basic.PropertiesView.FPS.Simple"),
|
||||||
QVariant::fromValue(frame_rate_tag::simple()));
|
QVariant::fromValue(frame_rate_tag::simple()));
|
||||||
combo->addItem(QTStr("Basic.PropertiesView.FPS.Rational"),
|
combo->addItem(QObject::tr("Basic.PropertiesView.FPS.Rational"),
|
||||||
QVariant::fromValue(frame_rate_tag::rational()));
|
QVariant::fromValue(frame_rate_tag::rational()));
|
||||||
|
|
||||||
combo->setToolTip(QT_UTF8(obs_property_long_description(prop)));
|
combo->setToolTip(QT_UTF8(obs_property_long_description(prop)));
|
||||||
|
@ -1616,7 +1617,7 @@ void OBSPropertiesView::AddProperty(obs_property_t *property,
|
||||||
widget->setEnabled(false);
|
widget->setEnabled(false);
|
||||||
|
|
||||||
if (obs_property_long_description(property)) {
|
if (obs_property_long_description(property)) {
|
||||||
QString file = !App()->IsThemeDark()
|
QString file = !obs_frontend_is_theme_dark()
|
||||||
? ":/res/images/help.svg"
|
? ":/res/images/help.svg"
|
||||||
: ":/res/images/help_light.svg";
|
: ":/res/images/help_light.svg";
|
||||||
if (label) {
|
if (label) {
|
||||||
|
@ -1970,13 +1971,13 @@ bool WidgetInfo::FontChanged(const char *setting)
|
||||||
QFont initial;
|
QFont initial;
|
||||||
font = QFontDialog::getFont(
|
font = QFontDialog::getFont(
|
||||||
&success, initial, view,
|
&success, initial, view,
|
||||||
QTStr("Basic.PropertiesWindow.SelectFont.WindowTitle"),
|
tr("Basic.PropertiesWindow.SelectFont.WindowTitle"),
|
||||||
options);
|
options);
|
||||||
} else {
|
} else {
|
||||||
MakeQFont(font_obj, font);
|
MakeQFont(font_obj, font);
|
||||||
font = QFontDialog::getFont(
|
font = QFontDialog::getFont(
|
||||||
&success, font, view,
|
&success, font, view,
|
||||||
QTStr("Basic.PropertiesWindow.SelectFont.WindowTitle"),
|
tr("Basic.PropertiesWindow.SelectFont.WindowTitle"),
|
||||||
options);
|
options);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2042,15 +2043,14 @@ void WidgetInfo::ButtonClicked()
|
||||||
QUrl url(savedUrl, QUrl::StrictMode);
|
QUrl url(savedUrl, QUrl::StrictMode);
|
||||||
if (url.isValid() && (url.scheme().compare("http") == 0 ||
|
if (url.isValid() && (url.scheme().compare("http") == 0 ||
|
||||||
url.scheme().compare("https") == 0)) {
|
url.scheme().compare("https") == 0)) {
|
||||||
QString msg(
|
QString msg(tr("Basic.PropertiesView.UrlButton.Text"));
|
||||||
QTStr("Basic.PropertiesView.UrlButton.Text"));
|
|
||||||
msg += "\n\n";
|
msg += "\n\n";
|
||||||
msg += QString(QTStr("Basic.PropertiesView.UrlButton.Text.Url"))
|
msg += QString(tr("Basic.PropertiesView.UrlButton.Text.Url"))
|
||||||
.arg(savedUrl);
|
.arg(savedUrl);
|
||||||
|
|
||||||
QMessageBox::StandardButton button = OBSMessageBox::question(
|
QMessageBox::StandardButton button = OBSMessageBox::question(
|
||||||
view->window(),
|
view->window(),
|
||||||
QTStr("Basic.PropertiesView.UrlButton.OpenUrl"),
|
tr("Basic.PropertiesView.UrlButton.OpenUrl"),
|
||||||
msg, QMessageBox::Yes | QMessageBox::No,
|
msg, QMessageBox::Yes | QMessageBox::No,
|
||||||
QMessageBox::No);
|
QMessageBox::No);
|
||||||
|
|
||||||
|
@ -2188,8 +2188,7 @@ class EditableItemDialog : public QDialog {
|
||||||
if (curPath.isEmpty())
|
if (curPath.isEmpty())
|
||||||
curPath = default_path;
|
curPath = default_path;
|
||||||
|
|
||||||
QString path = OpenFile(App()->GetMainWindow(), QTStr("Browse"),
|
QString path = OpenFile(this, tr("Browse"), curPath, filter);
|
||||||
curPath, filter);
|
|
||||||
if (path.isEmpty())
|
if (path.isEmpty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -2214,7 +2213,7 @@ public:
|
||||||
|
|
||||||
if (browse) {
|
if (browse) {
|
||||||
QPushButton *browseButton =
|
QPushButton *browseButton =
|
||||||
new QPushButton(QTStr("Browse"));
|
new QPushButton(tr("Browse"));
|
||||||
browseButton->setProperty("themeID", "settingsButtons");
|
browseButton->setProperty("themeID", "settingsButtons");
|
||||||
topLayout->addWidget(browseButton);
|
topLayout->addWidget(browseButton);
|
||||||
topLayout->setAlignment(browseButton, Qt::AlignVCenter);
|
topLayout->setAlignment(browseButton, Qt::AlignVCenter);
|
||||||
|
@ -2259,18 +2258,17 @@ void WidgetInfo::EditListAdd()
|
||||||
|
|
||||||
QAction *action;
|
QAction *action;
|
||||||
|
|
||||||
action = new QAction(QTStr("Basic.PropertiesWindow.AddFiles"), this);
|
action = new QAction(tr("Basic.PropertiesWindow.AddFiles"), this);
|
||||||
connect(action, &QAction::triggered, this,
|
connect(action, &QAction::triggered, this,
|
||||||
&WidgetInfo::EditListAddFiles);
|
&WidgetInfo::EditListAddFiles);
|
||||||
popup.addAction(action);
|
popup.addAction(action);
|
||||||
|
|
||||||
action = new QAction(QTStr("Basic.PropertiesWindow.AddDir"), this);
|
action = new QAction(tr("Basic.PropertiesWindow.AddDir"), this);
|
||||||
connect(action, &QAction::triggered, this, &WidgetInfo::EditListAddDir);
|
connect(action, &QAction::triggered, this, &WidgetInfo::EditListAddDir);
|
||||||
popup.addAction(action);
|
popup.addAction(action);
|
||||||
|
|
||||||
if (type == OBS_EDITABLE_LIST_TYPE_FILES_AND_URLS) {
|
if (type == OBS_EDITABLE_LIST_TYPE_FILES_AND_URLS) {
|
||||||
action = new QAction(QTStr("Basic.PropertiesWindow.AddURL"),
|
action = new QAction(tr("Basic.PropertiesWindow.AddURL"), this);
|
||||||
this);
|
|
||||||
connect(action, &QAction::triggered, this,
|
connect(action, &QAction::triggered, this,
|
||||||
&WidgetInfo::EditListAddText);
|
&WidgetInfo::EditListAddText);
|
||||||
popup.addAction(action);
|
popup.addAction(action);
|
||||||
|
@ -2285,7 +2283,7 @@ void WidgetInfo::EditListAddText()
|
||||||
const char *desc = obs_property_description(property);
|
const char *desc = obs_property_description(property);
|
||||||
|
|
||||||
EditableItemDialog dialog(widget->window(), QString(), false);
|
EditableItemDialog dialog(widget->window(), QString(), false);
|
||||||
auto title = QTStr("Basic.PropertiesWindow.AddEditableListEntry")
|
auto title = tr("Basic.PropertiesWindow.AddEditableListEntry")
|
||||||
.arg(QT_UTF8(desc));
|
.arg(QT_UTF8(desc));
|
||||||
dialog.setWindowTitle(title);
|
dialog.setWindowTitle(title);
|
||||||
if (dialog.exec() == QDialog::Rejected)
|
if (dialog.exec() == QDialog::Rejected)
|
||||||
|
@ -2307,11 +2305,11 @@ void WidgetInfo::EditListAddFiles()
|
||||||
const char *default_path =
|
const char *default_path =
|
||||||
obs_property_editable_list_default_path(property);
|
obs_property_editable_list_default_path(property);
|
||||||
|
|
||||||
QString title = QTStr("Basic.PropertiesWindow.AddEditableListFiles")
|
QString title = tr("Basic.PropertiesWindow.AddEditableListFiles")
|
||||||
.arg(QT_UTF8(desc));
|
.arg(QT_UTF8(desc));
|
||||||
|
|
||||||
QStringList files = OpenFiles(App()->GetMainWindow(), title,
|
QStringList files =
|
||||||
QT_UTF8(default_path), QT_UTF8(filter));
|
OpenFiles(list, title, QT_UTF8(default_path), QT_UTF8(filter));
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
// TODO: Revisit when QTBUG-42661 is fixed
|
// TODO: Revisit when QTBUG-42661 is fixed
|
||||||
widget->window()->raise();
|
widget->window()->raise();
|
||||||
|
@ -2331,11 +2329,10 @@ void WidgetInfo::EditListAddDir()
|
||||||
const char *default_path =
|
const char *default_path =
|
||||||
obs_property_editable_list_default_path(property);
|
obs_property_editable_list_default_path(property);
|
||||||
|
|
||||||
QString title = QTStr("Basic.PropertiesWindow.AddEditableListDir")
|
QString title = tr("Basic.PropertiesWindow.AddEditableListDir")
|
||||||
.arg(QT_UTF8(desc));
|
.arg(QT_UTF8(desc));
|
||||||
|
|
||||||
QString dir = SelectDirectory(App()->GetMainWindow(), title,
|
QString dir = SelectDirectory(list, title, QT_UTF8(default_path));
|
||||||
QT_UTF8(default_path));
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
// TODO: Revisit when QTBUG-42661 is fixed
|
// TODO: Revisit when QTBUG-42661 is fixed
|
||||||
widget->window()->raise();
|
widget->window()->raise();
|
||||||
|
@ -2377,11 +2374,11 @@ void WidgetInfo::EditListEdit()
|
||||||
QString path;
|
QString path;
|
||||||
|
|
||||||
if (pathDir.exists())
|
if (pathDir.exists())
|
||||||
path = SelectDirectory(App()->GetMainWindow(),
|
path = SelectDirectory(list, tr("Browse"),
|
||||||
QTStr("Browse"), item->text());
|
item->text());
|
||||||
else
|
else
|
||||||
path = OpenFile(App()->GetMainWindow(), QTStr("Browse"),
|
path = OpenFile(list, tr("Browse"), item->text(),
|
||||||
item->text(), QT_UTF8(filter));
|
QT_UTF8(filter));
|
||||||
|
|
||||||
if (path.isEmpty())
|
if (path.isEmpty())
|
||||||
return;
|
return;
|
||||||
|
@ -2394,7 +2391,7 @@ void WidgetInfo::EditListEdit()
|
||||||
EditableItemDialog dialog(widget->window(), item->text(),
|
EditableItemDialog dialog(widget->window(), item->text(),
|
||||||
type != OBS_EDITABLE_LIST_TYPE_STRINGS,
|
type != OBS_EDITABLE_LIST_TYPE_STRINGS,
|
||||||
filter);
|
filter);
|
||||||
auto title = QTStr("Basic.PropertiesWindow.EditEditableListEntry")
|
auto title = tr("Basic.PropertiesWindow.EditEditableListEntry")
|
||||||
.arg(QT_UTF8(desc));
|
.arg(QT_UTF8(desc));
|
||||||
dialog.setWindowTitle(title);
|
dialog.setWindowTitle(title);
|
||||||
if (dialog.exec() == QDialog::Rejected)
|
if (dialog.exec() == QDialog::Rejected)
|
Loading…
Reference in a new issue