diff --git a/forms/advanced-scene-switcher.ui b/forms/advanced-scene-switcher.ui index e9251f69..41f0e557 100644 --- a/forms/advanced-scene-switcher.ui +++ b/forms/advanced-scene-switcher.ui @@ -215,70 +215,6 @@ - - - - - - Automatically stop streaming/recording on scene - - - - - - - - 0 - 0 - - - - - 100 - 0 - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - Enable verbose logging - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - @@ -364,6 +300,70 @@ + + + + + + Enable verbose logging + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + Automatically stop streaming/recording on scene + + + + + + + + 0 + 0 + + + + + 100 + 0 + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + @@ -371,6 +371,30 @@ + + + + + + Disable UI hints + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + diff --git a/src/advanced-scene-switcher.cpp b/src/advanced-scene-switcher.cpp index 4ebdeada..8056c9b4 100644 --- a/src/advanced-scene-switcher.cpp +++ b/src/advanced-scene-switcher.cpp @@ -215,6 +215,9 @@ QMetaObject::Connection SceneSwitcher::PulseWidget(QWidget *widget, QColor startColor, QString specifier) { + if (switcher->disableHints) + return QMetaObject::Connection(); + widget->setStyleSheet(specifier + "{ \ border-style: outset; \ border-width: 2px; \ diff --git a/src/general.cpp b/src/general.cpp index 38392b6e..b92e1b5a 100644 --- a/src/general.cpp +++ b/src/general.cpp @@ -243,11 +243,16 @@ void SceneSwitcher::on_verboseLogging_stateChanged(int state) { if (loading) return; - - std::lock_guard lock(switcher->m); switcher->verbose = state; } +void SceneSwitcher::on_uiHints_stateChanged(int state) +{ + if (loading) + return; + switcher->disableHints = state; +} + void SceneSwitcher::on_exportSettings_clicked() { QString directory = QFileDialog::getSaveFileName( @@ -440,6 +445,7 @@ void SwitcherData::saveGeneralSettings(obs_data_t *obj) autoStartSceneName.c_str()); obs_data_set_bool(obj, "verbose", switcher->verbose); + obs_data_set_bool(obj, "disableHints", switcher->disableHints); obs_data_set_int(obj, "priority0", switcher->functionNamesByPriority[0]); @@ -511,6 +517,7 @@ void SwitcherData::loadGeneralSettings(obs_data_t *obj) switcher->autoStartScene = GetWeakSourceByName(autoStartScene.c_str()); switcher->verbose = obs_data_get_bool(obj, "verbose"); + switcher->disableHints = obs_data_get_bool(obj, "disableHints"); obs_data_set_default_int(obj, "priority0", default_priority_0); obs_data_set_default_int(obj, "priority1", default_priority_1); @@ -646,6 +653,7 @@ void SceneSwitcher::setupGeneralTab() } ui->verboseLogging->setChecked(switcher->verbose); + ui->uiHintsDisable->setChecked(switcher->disableHints); for (int p : switcher->functionNamesByPriority) { std::string s = ""; diff --git a/src/headers/advanced-scene-switcher.hpp b/src/headers/advanced-scene-switcher.hpp index 75d8a486..68879f66 100644 --- a/src/headers/advanced-scene-switcher.hpp +++ b/src/headers/advanced-scene-switcher.hpp @@ -136,6 +136,7 @@ public slots: void on_autoStartScenes_currentTextChanged(const QString &text); void on_verboseLogging_stateChanged(int state); + void on_uiHints_stateChanged(int state); void on_exportSettings_clicked(); void on_importSettings_clicked(); diff --git a/src/headers/switcher-data-structs.hpp b/src/headers/switcher-data-structs.hpp index da0b0be6..2c58ddbf 100644 --- a/src/headers/switcher-data-structs.hpp +++ b/src/headers/switcher-data-structs.hpp @@ -46,6 +46,7 @@ struct SwitcherData { std::condition_variable transitionCv; bool stop = false; bool verbose = false; + bool disableHints = false; bool tansitionOverrideOverride = false; int interval = default_interval;