Restructure "src/" folder

Moving files from the "src/" folder into "src/legacy", "src/macro-core",
and "src/utils" was necessary as it was becoming a bit too cluttered.
This commit is contained in:
WarmUpTill 2022-08-14 04:10:30 +02:00 committed by WarmUpTill
parent 5ae9e18044
commit 53a5fa6ff4
224 changed files with 589 additions and 895 deletions

View File

@ -26,210 +26,229 @@ git_describe(GIT_TAG)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/version.cpp.in"
"${CMAKE_CURRENT_BINARY_DIR}/src/version.cpp" @ONLY)
# --- Set target sources ---
# Module sources
target_sources(${PROJECT_NAME} PRIVATE src/advanced-scene-switcher-module.c)
# Generic sources
target_sources(
${LIB_NAME}
PRIVATE src/headers/advanced-scene-switcher.hpp
src/headers/switcher-data-structs.hpp
src/headers/scene-group.hpp
src/headers/scene-trigger.hpp
src/headers/switch-audio.hpp
src/headers/switch-executable.hpp
src/headers/switch-file.hpp
src/headers/switch-idle.hpp
src/headers/switch-media.hpp
src/headers/switch-network.hpp
src/headers/switch-pause.hpp
src/headers/switch-random.hpp
src/headers/switch-screen-region.hpp
src/headers/switch-time.hpp
src/headers/switch-transitions.hpp
src/headers/switch-window.hpp
src/headers/switch-sequence.hpp
src/headers/switch-video.hpp
src/headers/switch-generic.hpp
src/headers/macro-action.hpp
src/headers/macro-action-edit.hpp
src/headers/macro-action-audio.hpp
src/headers/macro-action-file.hpp
src/headers/macro-action-filter.hpp
src/headers/macro-action-hotkey.hpp
src/headers/macro-action-macro.hpp
src/headers/macro-action-media.hpp
src/headers/macro-action-plugin-state.hpp
src/headers/macro-action-profile.hpp
src/headers/macro-action-random.hpp
src/headers/macro-action-recording.hpp
src/headers/macro-action-replay-buffer.hpp
src/headers/macro-action-run.hpp
src/headers/macro-action-scene-collection.hpp
src/headers/macro-action-scene-order.hpp
src/headers/macro-action-scene-switch.hpp
src/headers/macro-action-scene-transform.hpp
src/headers/macro-action-scene-visibility.hpp
src/headers/macro-action-screenshot.hpp
src/headers/macro-action-sequence.hpp
src/headers/macro-action-source.hpp
src/headers/macro-action-streaming.hpp
src/headers/macro-action-studio-mode.hpp
src/headers/macro-action-systray.hpp
src/headers/macro-action-timer.hpp
src/headers/macro-action-transition.hpp
src/headers/macro-action-virtual-cam.hpp
src/headers/macro-action-wait.hpp
src/headers/macro-condition.hpp
src/headers/macro-condition-edit.hpp
src/headers/macro-condition-audio.hpp
src/headers/macro-condition-cursor.hpp
src/headers/macro-condition-date.hpp
src/headers/macro-condition-file.hpp
src/headers/macro-condition-filter.hpp
src/headers/macro-condition-hotkey.hpp
src/headers/macro-condition-idle.hpp
src/headers/macro-condition-macro.hpp
src/headers/macro-condition-media.hpp
src/headers/macro-condition-obs-stats.hpp
src/headers/macro-condition-plugin-state.hpp
src/headers/macro-condition-process.hpp
src/headers/macro-condition-profile.hpp
src/headers/macro-condition-recording.hpp
src/headers/macro-condition-replay-buffer.hpp
src/headers/macro-condition-scene-order.hpp
src/headers/macro-condition-scene-transform.hpp
src/headers/macro-condition-scene-visibility.hpp
src/headers/macro-condition-scene.hpp
src/headers/macro-condition-source.hpp
src/headers/macro-condition-streaming.hpp
src/headers/macro-condition-studio-mode.hpp
src/headers/macro-condition-timer.hpp
src/headers/macro-condition-transition.hpp
src/headers/macro-condition-virtual-cam.hpp
src/headers/macro-condition-window.hpp
src/headers/macro.hpp
src/headers/macro-ref.hpp
src/headers/macro-list-entry-widget.hpp
src/headers/macro-properties.hpp
src/headers/macro-segment.hpp
src/headers/macro-segment-list.hpp
src/headers/macro-selection.hpp
src/headers/curl-helper.hpp
src/headers/hotkey.hpp
src/headers/scene-item-selection.hpp
src/headers/scene-selection.hpp
src/headers/screenshot-helper.hpp
src/headers/transition-selection.hpp
src/headers/name-dialog.hpp
src/headers/duration-control.hpp
src/headers/file-selection.hpp
src/headers/section.hpp
src/headers/status-control.hpp
src/headers/platform-funcs.hpp
src/headers/resizing-text-edit.hpp
src/headers/utility.hpp
src/headers/volume-control.hpp
src/headers/version.h
src/advanced-scene-switcher.cpp
src/switcher-data-structs.cpp
src/scene-group.cpp
src/scene-trigger.cpp
src/switch-transitions.cpp
src/switch-screen-region.cpp
src/switch-priority.cpp
src/switch-executable.cpp
src/switch-idle.cpp
src/switch-sequence.cpp
src/switch-file.cpp
src/switch-window.cpp
src/switch-media.cpp
src/switch-network.cpp
src/file-selection.cpp
src/hotkey.cpp
PRIVATE src/advanced-scene-switcher.cpp
src/advanced-scene-switcher.hpp
src/general.cpp
src/switch-pause.cpp
src/switch-random.cpp
src/switch-time.cpp
src/switch-audio.cpp
src/switch-video.cpp
src/switch-generic.cpp
src/macro-action.cpp
src/macro-action-edit.cpp
src/macro-action-audio.cpp
src/macro-action-file.cpp
src/macro-action-filter.cpp
src/macro-action-hotkey.cpp
src/macro-action-macro.cpp
src/macro-action-media.cpp
src/macro-action-plugin-state.cpp
src/macro-action-profile.cpp
src/macro-action-random.cpp
src/macro-action-recording.cpp
src/macro-action-replay-buffer.cpp
src/macro-action-run.cpp
src/macro-action-scene-collection.cpp
src/macro-action-scene-order.cpp
src/macro-action-scene-switch.cpp
src/macro-action-scene-transform.cpp
src/macro-action-scene-visibility.cpp
src/macro-action-screenshot.cpp
src/macro-action-sequence.cpp
src/macro-action-source.cpp
src/macro-action-streaming.cpp
src/macro-action-studio-mode.cpp
src/macro-action-systray.cpp
src/macro-action-timer.cpp
src/macro-action-transition.cpp
src/macro-action-virtual-cam.cpp
src/macro-action-wait.cpp
src/macro-condition.cpp
src/macro-condition-edit.cpp
src/macro-condition-audio.cpp
src/macro-condition-cursor.cpp
src/macro-condition-date.cpp
src/macro-condition-file.cpp
src/macro-condition-filter.cpp
src/macro-condition-hotkey.cpp
src/macro-condition-idle.cpp
src/macro-condition-macro.cpp
src/macro-condition-media.cpp
src/macro-condition-obs-stats.cpp
src/macro-condition-plugin-state.cpp
src/macro-condition-process.cpp
src/macro-condition-profile.cpp
src/macro-condition-recording.cpp
src/macro-condition-replay-buffer.cpp
src/macro-condition-scene-order.cpp
src/macro-condition-scene-transform.cpp
src/macro-condition-scene-visibility.cpp
src/macro-condition-scene.cpp
src/macro-condition-source.cpp
src/macro-condition-streaming.cpp
src/macro-condition-studio-mode.cpp
src/macro-condition-timer.cpp
src/macro-condition-transition.cpp
src/macro-condition-virtual-cam.cpp
src/macro-condition-window.cpp
src/macro.cpp
src/macro-ref.cpp
src/macro-list-entry-widget.cpp
src/macro-properties.cpp
src/macro-segment.cpp
src/macro-segment-list.cpp
src/macro-selection.cpp
src/macro-tab.cpp
src/curl-helper.cpp
src/scene-item-selection.cpp
src/scene-selection.cpp
src/screenshot-helper.cpp
src/transition-selection.cpp
src/name-dialog.cpp
src/resizing-text-edit.cpp
src/duration-control.cpp
src/hotkey.cpp
src/hotkey.hpp
src/hotkey.hpp
src/platform-funcs.hpp
src/scene-group.cpp
src/scene-group.hpp
src/status-control.cpp
src/section.cpp
src/utility.cpp
src/volume-control.cpp
src/version.cpp)
src/status-control.hpp
src/switcher-data-structs.cpp
src/switcher-data-structs.hpp
src/version.cpp
src/version.h)
# Legacy function sources
target_sources(
${LIB_NAME}
PRIVATE src/legacy/scene-trigger.cpp
src/legacy/scene-trigger.hpp
src/legacy/switch-audio.cpp
src/legacy/switch-audio.hpp
src/legacy/switch-executable.cpp
src/legacy/switch-executable.hpp
src/legacy/switch-file.cpp
src/legacy/switch-file.hpp
src/legacy/switch-generic.cpp
src/legacy/switch-generic.hpp
src/legacy/switch-idle.cpp
src/legacy/switch-idle.hpp
src/legacy/switch-media.cpp
src/legacy/switch-media.hpp
src/legacy/switch-network.cpp
src/legacy/switch-network.hpp
src/legacy/switch-pause.cpp
src/legacy/switch-pause.hpp
src/legacy/switch-priority.cpp
src/legacy/switch-random.cpp
src/legacy/switch-random.hpp
src/legacy/switch-screen-region.cpp
src/legacy/switch-screen-region.hpp
src/legacy/switch-sequence.cpp
src/legacy/switch-sequence.hpp
src/legacy/switch-time.cpp
src/legacy/switch-time.hpp
src/legacy/switch-transitions.cpp
src/legacy/switch-transitions.hpp
src/legacy/switch-video.cpp
src/legacy/switch-video.hpp
src/legacy/switch-window.cpp
src/legacy/switch-window.hpp)
# Maro sources
target_sources(
${LIB_NAME}
PRIVATE src/macro-core/macro-action-audio.cpp
src/macro-core/macro-action-audio.hpp
src/macro-core/macro-action-edit.cpp
src/macro-core/macro-action-edit.hpp
src/macro-core/macro-action-file.cpp
src/macro-core/macro-action-file.hpp
src/macro-core/macro-action-filter.cpp
src/macro-core/macro-action-filter.hpp
src/macro-core/macro-action-hotkey.cpp
src/macro-core/macro-action-hotkey.hpp
src/macro-core/macro-action-macro.cpp
src/macro-core/macro-action-macro.hpp
src/macro-core/macro-action-media.cpp
src/macro-core/macro-action-media.hpp
src/macro-core/macro-action-plugin-state.cpp
src/macro-core/macro-action-plugin-state.hpp
src/macro-core/macro-action-profile.cpp
src/macro-core/macro-action-profile.hpp
src/macro-core/macro-action-random.cpp
src/macro-core/macro-action-random.hpp
src/macro-core/macro-action-recording.cpp
src/macro-core/macro-action-recording.hpp
src/macro-core/macro-action-replay-buffer.cpp
src/macro-core/macro-action-replay-buffer.hpp
src/macro-core/macro-action-run.cpp
src/macro-core/macro-action-run.hpp
src/macro-core/macro-action-scene-collection.cpp
src/macro-core/macro-action-scene-collection.hpp
src/macro-core/macro-action-scene-order.cpp
src/macro-core/macro-action-scene-order.hpp
src/macro-core/macro-action-scene-switch.cpp
src/macro-core/macro-action-scene-switch.hpp
src/macro-core/macro-action-scene-transform.cpp
src/macro-core/macro-action-scene-transform.hpp
src/macro-core/macro-action-scene-visibility.cpp
src/macro-core/macro-action-scene-visibility.hpp
src/macro-core/macro-action-screenshot.cpp
src/macro-core/macro-action-screenshot.hpp
src/macro-core/macro-action-sequence.cpp
src/macro-core/macro-action-sequence.hpp
src/macro-core/macro-action-source.cpp
src/macro-core/macro-action-source.hpp
src/macro-core/macro-action-streaming.cpp
src/macro-core/macro-action-streaming.hpp
src/macro-core/macro-action-studio-mode.cpp
src/macro-core/macro-action-studio-mode.hpp
src/macro-core/macro-action-systray.cpp
src/macro-core/macro-action-systray.hpp
src/macro-core/macro-action-timer.cpp
src/macro-core/macro-action-timer.hpp
src/macro-core/macro-action-transition.cpp
src/macro-core/macro-action-transition.hpp
src/macro-core/macro-action-virtual-cam.cpp
src/macro-core/macro-action-virtual-cam.hpp
src/macro-core/macro-action-wait.cpp
src/macro-core/macro-action-wait.hpp
src/macro-core/macro-action.cpp
src/macro-core/macro-action.hpp
src/macro-core/macro-condition-audio.cpp
src/macro-core/macro-condition-audio.hpp
src/macro-core/macro-condition-cursor.cpp
src/macro-core/macro-condition-cursor.hpp
src/macro-core/macro-condition-date.cpp
src/macro-core/macro-condition-date.hpp
src/macro-core/macro-condition-edit.cpp
src/macro-core/macro-condition-edit.hpp
src/macro-core/macro-condition-file.cpp
src/macro-core/macro-condition-file.hpp
src/macro-core/macro-condition-filter.cpp
src/macro-core/macro-condition-filter.hpp
src/macro-core/macro-condition-hotkey.cpp
src/macro-core/macro-condition-hotkey.hpp
src/macro-core/macro-condition-idle.cpp
src/macro-core/macro-condition-idle.hpp
src/macro-core/macro-condition-macro.cpp
src/macro-core/macro-condition-macro.hpp
src/macro-core/macro-condition-media.cpp
src/macro-core/macro-condition-media.hpp
src/macro-core/macro-condition-obs-stats.cpp
src/macro-core/macro-condition-obs-stats.hpp
src/macro-core/macro-condition-plugin-state.cpp
src/macro-core/macro-condition-plugin-state.hpp
src/macro-core/macro-condition-process.cpp
src/macro-core/macro-condition-process.hpp
src/macro-core/macro-condition-profile.cpp
src/macro-core/macro-condition-profile.hpp
src/macro-core/macro-condition-recording.cpp
src/macro-core/macro-condition-recording.hpp
src/macro-core/macro-condition-replay-buffer.cpp
src/macro-core/macro-condition-replay-buffer.hpp
src/macro-core/macro-condition-scene-order.cpp
src/macro-core/macro-condition-scene-order.hpp
src/macro-core/macro-condition-scene-transform.cpp
src/macro-core/macro-condition-scene-transform.hpp
src/macro-core/macro-condition-scene-visibility.cpp
src/macro-core/macro-condition-scene-visibility.hpp
src/macro-core/macro-condition-scene.cpp
src/macro-core/macro-condition-scene.hpp
src/macro-core/macro-condition-source.cpp
src/macro-core/macro-condition-source.hpp
src/macro-core/macro-condition-streaming.cpp
src/macro-core/macro-condition-streaming.hpp
src/macro-core/macro-condition-studio-mode.cpp
src/macro-core/macro-condition-studio-mode.hpp
src/macro-core/macro-condition-timer.cpp
src/macro-core/macro-condition-timer.hpp
src/macro-core/macro-condition-transition.cpp
src/macro-core/macro-condition-transition.hpp
src/macro-core/macro-condition-virtual-cam.cpp
src/macro-core/macro-condition-virtual-cam.hpp
src/macro-core/macro-condition-window.cpp
src/macro-core/macro-condition-window.hpp
src/macro-core/macro-condition.cpp
src/macro-core/macro-condition.hpp
src/macro-core/macro-list-entry-widget.cpp
src/macro-core/macro-list-entry-widget.hpp
src/macro-core/macro-properties.cpp
src/macro-core/macro-properties.hpp
src/macro-core/macro-ref.cpp
src/macro-core/macro-ref.hpp
src/macro-core/macro-segment-list.cpp
src/macro-core/macro-segment-list.hpp
src/macro-core/macro-segment.cpp
src/macro-core/macro-segment.hpp
src/macro-core/macro-selection.cpp
src/macro-core/macro-selection.hpp
src/macro-core/macro-tab.cpp
src/macro-core/macro.cpp
src/macro-core/macro.hpp)
# Utility function sources
target_sources(
${LIB_NAME}
PRIVATE src/utils/curl-helper.cpp
src/utils/curl-helper.hpp
src/utils/duration-control.cpp
src/utils/duration-control.hpp
src/utils/file-selection.cpp
src/utils/file-selection.hpp
src/utils/name-dialog.cpp
src/utils/name-dialog.hpp
src/utils/resizing-text-edit.cpp
src/utils/resizing-text-edit.hpp
src/utils/scene-item-selection.cpp
src/utils/scene-item-selection.hpp
src/utils/scene-selection.cpp
src/utils/scene-selection.hpp
src/utils/screenshot-helper.cpp
src/utils/screenshot-helper.hpp
src/utils/section.cpp
src/utils/section.hpp
src/utils/transition-selection.cpp
src/utils/transition-selection.hpp
src/utils/utility.cpp
src/utils/utility.hpp
src/utils/volume-control.cpp
src/utils/volume-control.hpp)
# --- End of section ---
if(BUILD_OUT_OF_TREE)
find_package(libobs REQUIRED)
@ -250,8 +269,12 @@ include(cmake/AdvSSHelpers.cmake)
# --- Platform-independent build settings ---
target_include_directories(
${LIB_NAME} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src"
"${CMAKE_CURRENT_BINARY_DIR}/forms")
${LIB_NAME}
PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/src"
"${CMAKE_CURRENT_SOURCE_DIR}/src/legacy"
"${CMAKE_CURRENT_SOURCE_DIR}/src/macro-core"
"${CMAKE_CURRENT_SOURCE_DIR}/src/utils"
"${CMAKE_CURRENT_BINARY_DIR}/forms")
set_target_properties(
${LIB_NAME}
@ -381,4 +404,4 @@ endif()
# --- End of section ---
add_subdirectory(src/external-macro-modules)
add_subdirectory(src/macro-external)

View File

@ -246,8 +246,11 @@ function(setup_advss_plugin target)
endforeach()
# General includes
target_include_directories(${target}
PRIVATE "${ADVSS_SOURCE_DIR}/src/headers")
target_include_directories(
${target}
PRIVATE "${ADVSS_SOURCE_DIR}/src" "${ADVSS_SOURCE_DIR}/src/legacy"
"${ADVSS_SOURCE_DIR}/src/macro-core"
"${ADVSS_SOURCE_DIR}/src/utils" "${ADVSS_SOURCE_DIR}/forms")
endfunction()
function(install_advss_plugin_dependency)

View File

@ -1,4 +1,4 @@
#include "headers/version.h"
#include "version.h"
#define GIT_SHA1 "@GIT_SHA1@"
#define GIT_TAG "@GIT_TAG@"
const char g_GIT_SHA1[] = GIT_SHA1;

2
deps/opencv vendored

@ -1 +1 @@
Subproject commit ad6e82942b37be8ee2c71c1d9bc7fe79cd16f7ab
Subproject commit b0dc474160e389b9c9045da5db49d03ae17c6a6b

View File

@ -8,11 +8,11 @@
#include <obs-module.h>
#include <obs-frontend-api.h>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/status-control.hpp"
#include "headers/curl-helper.hpp"
#include "headers/utility.hpp"
#include "headers/version.h"
#include "advanced-scene-switcher.hpp"
#include "status-control.hpp"
#include "curl-helper.hpp"
#include "utility.hpp"
#include "version.h"
const char *obs_module_text(const char *text)
{

View File

@ -1,8 +1,8 @@
#pragma once
#include "macro-segment-list.hpp"
#include "switcher-data-structs.hpp"
#include "platform-funcs.hpp"
#include <macro-segment-list.hpp>
#include <ui_advanced-scene-switcher.h>
#define blog(level, msg, ...) blog(level, "[adv-ss] " msg, ##__VA_ARGS__)

View File

@ -1,7 +1,7 @@
#include "headers/advanced-scene-switcher.hpp"
#include "headers/status-control.hpp"
#include "headers/utility.hpp"
#include "headers/version.h"
#include "advanced-scene-switcher.hpp"
#include "status-control.hpp"
#include "utility.hpp"
#include "version.h"
#include <QFileDialog>
#include <QStandardPaths>

View File

@ -1,5 +1,5 @@
#include "headers/hotkey.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "hotkey.hpp"
#include "advanced-scene-switcher.hpp"
#include <obs-module.h>
#include <fstream>
#include <regex>

View File

@ -1,7 +1,7 @@
#include <thread>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool SceneTrigger::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -1,8 +1,8 @@
#include <float.h>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/volume-control.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "volume-control.hpp"
#include "utility.hpp"
bool AudioSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -1,5 +1,5 @@
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool ExecutableSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -6,9 +6,9 @@
#include <regex>
#include <curl/curl.h>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/curl-helper.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "curl-helper.hpp"
#include "utility.hpp"
bool FileSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -1,5 +1,5 @@
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
static inline bool SceneGroupValid(SceneGroup *group)
{

View File

@ -1,7 +1,7 @@
#include <regex>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool IdleData::pause = false;
IdleWidget *idleWidget = nullptr;

View File

@ -1,5 +1,5 @@
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool MediaSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -6,8 +6,8 @@ Most of this code is based on https://github.com/Palakis/obs-websocket
#include <QTime>
#include <QMessageBox>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
#define PARAM_SERVER_ENABLE "ServerEnabled"
#define PARAM_SERVER_PORT "ServerPort"

View File

@ -1,7 +1,7 @@
#include <regex>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
static QMetaObject::Connection addPulse;

View File

@ -1,6 +1,6 @@
#include <algorithm>
#include "headers/advanced-scene-switcher.hpp"
#include "advanced-scene-switcher.hpp"
void AdvSceneSwitcher::on_threadPriority_currentTextChanged(const QString &text)
{

View File

@ -1,7 +1,7 @@
#include <random>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool RandomSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -1,7 +1,7 @@
#include <QTimer>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool ScreenRegionSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -2,8 +2,8 @@
#include <QTextStream>
#include <QScrollArea>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
constexpr auto max_extend_text_size = 150;

View File

@ -1,5 +1,5 @@
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool TimeSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -1,7 +1,7 @@
#include <thread>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
constexpr auto default_def_transition_dealy = 300;
bool DefaultSceneTransition::pause = false;

View File

@ -3,8 +3,8 @@
#include <QToolTip>
#include <thread>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool VideoSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -1,7 +1,7 @@
#include <regex>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
bool WindowSwitch::pause = false;
static QMetaObject::Connection addPulse;

View File

@ -1,4 +1,4 @@
#include "../headers/hotkey.hpp"
#include "platform-funcs.hpp"
#include <X11/Xlib.h>
#include <X11/Xatom.h>

View File

@ -1,344 +0,0 @@
#include "headers/macro-condition-edit.hpp"
#include "headers/macro-condition-date.hpp"
#include "headers/utility.hpp"
#include "headers/advanced-scene-switcher.hpp"
const std::string MacroConditionDate::id = "date";
bool MacroConditionDate::_registered = MacroConditionFactory::Register(
MacroConditionDate::id,
{MacroConditionDate::Create, MacroConditionDateEdit::Create,
"AdvSceneSwitcher.condition.date", false});
static std::map<DateCondition, std::string> dateConditionTypes = {
{DateCondition::AT, "AdvSceneSwitcher.condition.date.state.at"},
{DateCondition::AFTER, "AdvSceneSwitcher.condition.date.state.after"},
{DateCondition::BEFORE, "AdvSceneSwitcher.condition.date.state.before"},
{DateCondition::BETWEEN,
"AdvSceneSwitcher.condition.date.state.between"},
};
bool MacroConditionDate::CheckCondition()
{
bool match = false;
QDateTime cur = QDateTime::currentDateTime();
if (_ignoreDate) {
_dateTime.setDate(cur.date());
_dateTime2.setDate(cur.date());
}
if (_ignoreTime) {
_dateTime.setTime(cur.time());
_dateTime2.setTime(cur.time());
}
switch (_condition) {
case DateCondition::AT:
match = _dateTime >= cur &&
_dateTime <= cur.addMSecs(switcher->interval);
break;
case DateCondition::AFTER:
match = cur >= _dateTime;
break;
case DateCondition::BEFORE:
match = cur <= _dateTime;
break;
case DateCondition::BETWEEN:
if (_dateTime2 > _dateTime) {
match = cur >= _dateTime && cur <= _dateTime2;
} else {
match = cur >= _dateTime2 && cur <= _dateTime;
}
break;
default:
break;
}
if (match && _repeat) {
_dateTime = _dateTime.addSecs(_duration.seconds);
_dateTime2 = _dateTime2.addSecs(_duration.seconds);
}
return match;
}
bool MacroConditionDate::Save(obs_data_t *obj)
{
MacroCondition::Save(obj);
obs_data_set_int(obj, "condition", static_cast<int>(_condition));
obs_data_set_string(obj, "dateTime",
_dateTime.toString().toStdString().c_str());
obs_data_set_string(obj, "dateTime2",
_dateTime2.toString().toStdString().c_str());
obs_data_set_bool(obj, "ignoreDate", _ignoreDate);
obs_data_set_bool(obj, "ignoreTime", _ignoreTime);
obs_data_set_bool(obj, "repeat", _repeat);
_duration.Save(obj);
return true;
}
bool MacroConditionDate::Load(obs_data_t *obj)
{
MacroCondition::Load(obj);
_condition =
static_cast<DateCondition>(obs_data_get_int(obj, "condition"));
_dateTime = QDateTime::fromString(
QString::fromStdString(obs_data_get_string(obj, "dateTime")));
_dateTime2 = QDateTime::fromString(
QString::fromStdString(obs_data_get_string(obj, "dateTime2")));
_ignoreDate = obs_data_get_bool(obj, "ignoreDate");
_ignoreTime = obs_data_get_bool(obj, "ignoreTime");
_repeat = obs_data_get_bool(obj, "repeat");
_duration.Load(obj);
return true;
}
std::string MacroConditionDate::GetShortDesc()
{
return _dateTime.toString().toStdString();
}
static inline void populateConditionSelection(QComboBox *list)
{
for (auto entry : dateConditionTypes) {
list->addItem(obs_module_text(entry.second.c_str()));
}
}
#include <QCalendarWidget>
MacroConditionDateEdit::MacroConditionDateEdit(
QWidget *parent, std::shared_ptr<MacroConditionDate> entryData)
: QWidget(parent)
{
_condition = new QComboBox();
_date = new QDateEdit();
_date->setDisplayFormat("yyyy.MM.dd ");
_date->setCalendarPopup(true);
auto cal = _date->calendarWidget();
cal->showSelectedDate();
_time = new QTimeEdit();
_time->setDisplayFormat("hh:mm:ss");
_separator = new QLabel(
obs_module_text("AdvSceneSwitcher.condition.date.separator"));
_date2 = new QDateEdit();
_date2->setDisplayFormat("yyyy.MM.dd ");
_date2->setCalendarPopup(true);
cal = _date2->calendarWidget();
cal->showSelectedDate();
_time2 = new QTimeEdit();
_time2->setDisplayFormat("hh:mm:ss");
_ignoreDate = new QCheckBox();
_ignoreDate->setToolTip(
obs_module_text("AdvSceneSwitcher.condition.date.ignoreDate"));
_ignoreTime = new QCheckBox();
_ignoreTime->setToolTip(
obs_module_text("AdvSceneSwitcher.condition.date.ignoreTime"));
_repeat = new QCheckBox();
_duration = new DurationSelection();
QWidget::connect(_condition, SIGNAL(currentIndexChanged(int)), this,
SLOT(ConditionChanged(int)));
QWidget::connect(_date, SIGNAL(dateChanged(const QDate &)), this,
SLOT(DateChanged(const QDate &)));
QWidget::connect(_date2, SIGNAL(dateChanged(const QDate &)), this,
SLOT(Date2Changed(const QDate &)));
QWidget::connect(_time, SIGNAL(timeChanged(const QTime &)), this,
SLOT(TimeChanged(const QTime &)));
QWidget::connect(_time2, SIGNAL(timeChanged(const QTime &)), this,
SLOT(Time2Changed(const QTime &)));
QWidget::connect(_ignoreDate, SIGNAL(stateChanged(int)), this,
SLOT(IgnoreDateChanged(int)));
QWidget::connect(_ignoreTime, SIGNAL(stateChanged(int)), this,
SLOT(IgnoreTimeChanged(int)));
QWidget::connect(_repeat, SIGNAL(stateChanged(int)), this,
SLOT(RepeatChanged(int)));
QWidget::connect(_duration, SIGNAL(DurationChanged(double)), this,
SLOT(DurationChanged(double)));
QWidget::connect(_duration, SIGNAL(UnitChanged(DurationUnit)), this,
SLOT(DurationUnitChanged(DurationUnit)));
populateConditionSelection(_condition);
auto line1Layout = new QHBoxLayout;
std::unordered_map<std::string, QWidget *> widgetPlaceholders = {
{"{{condition}}", _condition},
{"{{date}}", _date},
{"{{time}}", _time},
{"{{separator}}", _separator},
{"{{date2}}", _date2},
{"{{time2}}", _time2},
{"{{ignoreDate}}", _ignoreDate},
{"{{ignoreTime}}", _ignoreTime},
{"{{repeat}}", _repeat},
{"{{duration}}", _duration},
};
placeWidgets(
obs_module_text("AdvSceneSwitcher.condition.date.entry.line1"),
line1Layout, widgetPlaceholders);
auto line2Layout = new QHBoxLayout;
placeWidgets(
obs_module_text("AdvSceneSwitcher.condition.date.entry.line2"),
line2Layout, widgetPlaceholders);
auto *mainLayout = new QVBoxLayout;
mainLayout->addLayout(line1Layout);
mainLayout->addLayout(line2Layout);
setLayout(mainLayout);
_entryData = entryData;
UpdateEntryData();
_loading = false;
}
void MacroConditionDateEdit::ConditionChanged(int cond)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_condition = static_cast<DateCondition>(cond);
ShowSecondDateSelection(_entryData->_condition ==
DateCondition::BETWEEN);
}
void MacroConditionDateEdit::DateChanged(const QDate &date)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_dateTime.setDate(date);
emit HeaderInfoChanged(
QString::fromStdString(_entryData->GetShortDesc()));
}
void MacroConditionDateEdit::TimeChanged(const QTime &time)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_dateTime.setTime(time);
emit HeaderInfoChanged(
QString::fromStdString(_entryData->GetShortDesc()));
}
void MacroConditionDateEdit::Date2Changed(const QDate &date)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_dateTime2.setDate(date);
}
void MacroConditionDateEdit::Time2Changed(const QTime &time)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_dateTime2.setTime(time);
}
void MacroConditionDateEdit::IgnoreDateChanged(int state)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_ignoreDate = !state;
SetWidgetStatus();
}
void MacroConditionDateEdit::IgnoreTimeChanged(int state)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_ignoreTime = !state;
SetWidgetStatus();
}
void MacroConditionDateEdit::RepeatChanged(int state)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_repeat = state;
_duration->setDisabled(!state);
}
void MacroConditionDateEdit::DurationChanged(double seconds)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_duration.seconds = seconds;
}
void MacroConditionDateEdit::DurationUnitChanged(DurationUnit unit)
{
if (_loading || !_entryData) {
return;
}
std::lock_guard<std::mutex> lock(switcher->m);
_entryData->_duration.displayUnit = unit;
}
void MacroConditionDateEdit::UpdateEntryData()
{
if (!_entryData) {
return;
}
_condition->setCurrentIndex(static_cast<int>(_entryData->_condition));
_date->setDate(_entryData->_dateTime.date());
_time->setTime(_entryData->_dateTime.time());
_date2->setDate(_entryData->_dateTime2.date());
_time2->setTime(_entryData->_dateTime2.time());
_ignoreDate->setChecked(!_entryData->_ignoreDate);
_ignoreTime->setChecked(!_entryData->_ignoreTime);
_repeat->setChecked(_entryData->_repeat);
_duration->SetDuration(_entryData->_duration);
_duration->setDisabled(!_entryData->_repeat);
SetWidgetStatus();
}
void MacroConditionDateEdit::SetWidgetStatus()
{
if (!_entryData) {
return;
}
_date->setDisabled(_entryData->_ignoreDate);
_date2->setDisabled(_entryData->_ignoreDate);
_time->setDisabled(_entryData->_ignoreTime);
_time2->setDisabled(_entryData->_ignoreTime);
ShowSecondDateSelection(_entryData->_condition ==
DateCondition::BETWEEN);
}
void MacroConditionDateEdit::ShowSecondDateSelection(bool visible)
{
_separator->setVisible(visible);
_date2->setVisible(visible);
_time2->setVisible(visible);
adjustSize();
}

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-audio.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-audio.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionAudio::id = "audio";

View File

@ -1,15 +1,19 @@
#include "headers/advanced-scene-switcher.hpp"
#include "headers/macro-action-edit.hpp"
#include "headers/macro-action-scene-switch.hpp"
#include "headers/section.hpp"
#include "headers/utility.hpp"
#include "advanced-scene-switcher.hpp"
#include "macro-action-edit.hpp"
#include "macro-action-scene-switch.hpp"
#include "section.hpp"
#include "utility.hpp"
std::map<std::string, MacroActionInfo> MacroActionFactory::_methods;
std::map<std::string, MacroActionInfo> &MacroActionFactory::GetMap()
{
static std::map<std::string, MacroActionInfo> _methods;
return _methods;
}
bool MacroActionFactory::Register(const std::string &id, MacroActionInfo info)
{
if (auto it = _methods.find(id); it == _methods.end()) {
_methods[id] = info;
if (auto it = GetMap().find(id); it == GetMap().end()) {
GetMap()[id] = info;
return true;
}
return false;
@ -18,7 +22,7 @@ bool MacroActionFactory::Register(const std::string &id, MacroActionInfo info)
std::shared_ptr<MacroAction> MacroActionFactory::Create(const std::string &id,
Macro *m)
{
if (auto it = _methods.find(id); it != _methods.end())
if (auto it = GetMap().find(id); it != GetMap().end())
return it->second._createFunc(m);
return nullptr;
@ -28,7 +32,7 @@ QWidget *MacroActionFactory::CreateWidget(const std::string &id,
QWidget *parent,
std::shared_ptr<MacroAction> action)
{
if (auto it = _methods.find(id); it != _methods.end())
if (auto it = GetMap().find(id); it != GetMap().end())
return it->second._createWidgetFunc(parent, action);
return nullptr;
@ -36,7 +40,7 @@ QWidget *MacroActionFactory::CreateWidget(const std::string &id,
std::string MacroActionFactory::GetActionName(const std::string &id)
{
if (auto it = _methods.find(id); it != _methods.end()) {
if (auto it = GetMap().find(id); it != GetMap().end()) {
return it->second._name;
}
return "unknown action";
@ -44,7 +48,7 @@ std::string MacroActionFactory::GetActionName(const std::string &id)
std::string MacroActionFactory::GetIdByName(const QString &name)
{
for (auto it : _methods) {
for (auto it : GetMap()) {
if (name == obs_module_text(it.second._name.c_str())) {
return it.first;
}

View File

@ -16,17 +16,18 @@ struct MacroActionInfo {
class MacroActionFactory {
public:
MacroActionFactory() = delete;
static bool Register(const std::string &id, MacroActionInfo);
static std::shared_ptr<MacroAction> Create(const std::string &id,
Macro *m);
static QWidget *CreateWidget(const std::string &id, QWidget *parent,
std::shared_ptr<MacroAction> action);
static auto GetActionTypes() { return _methods; }
static auto GetActionTypes() { return GetMap(); }
static std::string GetActionName(const std::string &id);
static std::string GetIdByName(const QString &name);
private:
static std::map<std::string, MacroActionInfo> _methods;
static std::map<std::string, MacroActionInfo> &GetMap();
};
class MacroActionEdit : public MacroSegmentEdit {

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-file.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-file.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
#include <QFile>
#include <QTextStream>

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-filter.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-filter.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionFilter::id = "filter";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-hotkey.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-hotkey.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
#include <obs-interaction.h>
const std::string MacroActionHotkey::id = "hotkey";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-macro.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-macro.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionMacro::id = "macro";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-media.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-media.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionMedia::id = "media";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-plugin-state.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-plugin-state.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
#include <thread>

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-profile.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-profile.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionProfile::id = "profile";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-random.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-random.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
#include <cstdlib>

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-recording.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-recording.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionRecord::id = "recording";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-replay-buffer.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-replay-buffer.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionReplayBuffer::id = "replay_buffer";

View File

@ -1,7 +1,7 @@
#include "headers/macro-action-run.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/name-dialog.hpp"
#include "headers/utility.hpp"
#include "macro-action-run.hpp"
#include "advanced-scene-switcher.hpp"
#include "name-dialog.hpp"
#include "utility.hpp"
#include <QProcess>
#include <QFileDialog>

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-scene-collection.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-scene-collection.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionSceneCollection::id = "scene_collection";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-scene-order.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-scene-order.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionSceneOrder::id = "scene_order";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-scene-switch.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-scene-switch.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
using namespace std::chrono_literals;

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-scene-transform.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-scene-transform.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionSceneTransform::id = "scene_transform";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-scene-visibility.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-scene-visibility.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionSceneVisibility::id = "scene_visibility";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-screenshot.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-screenshot.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionScreenshot::id = "screenshot";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-sequence.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-sequence.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionSequence::id = "sequence";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-source.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-source.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionSource::id = "source";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-streaming.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-streaming.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionStream::id = "streaming";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-studio-mode.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-studio-mode.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionSudioMode::id = "studio_mode";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-systray.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-systray.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionSystray::id = "systray_notification";

View File

@ -1,7 +1,7 @@
#include "headers/macro-action-timer.hpp"
#include "headers/macro-condition-timer.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-timer.hpp"
#include "macro-condition-timer.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
#include <random>

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-transition.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-transition.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionTransition::id = "transition";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-virtual-cam.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-virtual-cam.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
const std::string MacroActionVCam::id = "virtual_cam";

View File

@ -1,6 +1,6 @@
#include "headers/macro-action-wait.hpp"
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
#include "macro-action-wait.hpp"
#include "advanced-scene-switcher.hpp"
#include "utility.hpp"
#include <random>

Some files were not shown because too many files have changed in this diff Show More