UI rework (#44)

* rework general tab UI

* rework audio tab UI

* rework media tab UI

* rework time tab UI

* rework random tab UI

* rework window tab UI

* rework sreen region tab UI

* rework sequence tab UI

* rework transition tab UI

* adjust log messages to new format

* fix include path and warning

* highlight widgets to guide users (can be disabled)

* add helper frame for screen region tab

* rename main SceneSwitcher widget to AdvSceneSwitcher to resolve naming conflicts with the frontend tools on certain platforms (e.g. Debian 10)

* add media state 'any'

* adjust media switch handling to support vlc source
This commit is contained in:
WarmUpTill
2020-10-31 16:25:44 +01:00
committed by GitHub
parent 7edb6eb6c1
commit 214821b69f
35 changed files with 3975 additions and 4131 deletions

View File

@@ -1,6 +1,7 @@
#include <regex>
#include "headers/advanced-scene-switcher.hpp"
#include "headers/utility.hpp"
void SwitcherData::checkIdleSwitch(bool &match, OBSWeakSource &scene,
OBSWeakSource &transition)
@@ -50,7 +51,7 @@ void SwitcherData::checkIdleSwitch(bool &match, OBSWeakSource &scene,
idleData.alreadySwitched = false;
}
void SceneSwitcher::on_idleCheckBox_stateChanged(int state)
void AdvSceneSwitcher::on_idleCheckBox_stateChanged(int state)
{
if (loading)
return;
@@ -74,13 +75,13 @@ void SceneSwitcher::on_idleCheckBox_stateChanged(int state)
}
}
void SceneSwitcher::UpdateIdleDataTransition(const QString &name)
void AdvSceneSwitcher::UpdateIdleDataTransition(const QString &name)
{
obs_weak_source_t *transition = GetWeakTransitionByQString(name);
switcher->idleData.transition = transition;
}
void SceneSwitcher::UpdateIdleDataScene(const QString &name)
void AdvSceneSwitcher::UpdateIdleDataScene(const QString &name)
{
switcher->idleData.usePreviousScene = (name == previous_scene_name);
obs_source_t *scene = obs_get_source_by_name(name.toUtf8().constData());
@@ -92,7 +93,7 @@ void SceneSwitcher::UpdateIdleDataScene(const QString &name)
obs_source_release(scene);
}
void SceneSwitcher::on_idleTransitions_currentTextChanged(const QString &text)
void AdvSceneSwitcher::on_idleTransitions_currentTextChanged(const QString &text)
{
if (loading)
return;
@@ -101,7 +102,7 @@ void SceneSwitcher::on_idleTransitions_currentTextChanged(const QString &text)
UpdateIdleDataTransition(text);
}
void SceneSwitcher::on_idleScenes_currentTextChanged(const QString &text)
void AdvSceneSwitcher::on_idleScenes_currentTextChanged(const QString &text)
{
if (loading)
return;
@@ -110,7 +111,7 @@ void SceneSwitcher::on_idleScenes_currentTextChanged(const QString &text)
UpdateIdleDataScene(text);
}
void SceneSwitcher::on_idleSpinBox_valueChanged(int i)
void AdvSceneSwitcher::on_idleSpinBox_valueChanged(int i)
{
if (loading)
return;
@@ -118,7 +119,7 @@ void SceneSwitcher::on_idleSpinBox_valueChanged(int i)
switcher->idleData.time = i;
}
void SceneSwitcher::on_ignoreIdleWindows_currentRowChanged(int idx)
void AdvSceneSwitcher::on_ignoreIdleWindows_currentRowChanged(int idx)
{
if (loading)
return;
@@ -138,7 +139,7 @@ void SceneSwitcher::on_ignoreIdleWindows_currentRowChanged(int idx)
}
}
void SceneSwitcher::on_ignoreIdleAdd_clicked()
void AdvSceneSwitcher::on_ignoreIdleAdd_clicked()
{
QString windowName = ui->ignoreIdleWindowsWindows->currentText();
@@ -162,7 +163,7 @@ void SceneSwitcher::on_ignoreIdleAdd_clicked()
}
}
void SceneSwitcher::on_ignoreIdleRemove_clicked()
void AdvSceneSwitcher::on_ignoreIdleRemove_clicked()
{
QListWidgetItem *item = ui->ignoreIdleWindows->currentItem();
if (!item)
@@ -187,7 +188,7 @@ void SceneSwitcher::on_ignoreIdleRemove_clicked()
delete item;
}
int SceneSwitcher::IgnoreIdleWindowsFindByData(const QString &window)
int AdvSceneSwitcher::IgnoreIdleWindowsFindByData(const QString &window)
{
int count = ui->ignoreIdleWindows->count();
int idx = -1;
@@ -264,7 +265,7 @@ void SwitcherData::loadIdleSwitches(obs_data_t *obj)
(idleSceneName == previous_scene_name);
}
void SceneSwitcher::setupIdleTab()
void AdvSceneSwitcher::setupIdleTab()
{
populateSceneSelection(ui->idleScenes, true);
populateTransitionSelection(ui->idleTransitions);