Add support to resolve variables on action queue add

This commit is contained in:
WarmUpTill
2024-03-01 23:42:12 +01:00
committed by WarmUpTill
parent f8dadd38b4
commit 03e71e9183
82 changed files with 835 additions and 248 deletions

View File

@@ -37,7 +37,6 @@ static void setSceneItemLock(obs_sceneitem_t *item,
bool MacroActionSceneLock::PerformAction()
{
auto items = _source.GetSceneItems(_scene);
for (const auto &item : items) {
setSceneItemLock(item, _action);
@@ -87,6 +86,16 @@ std::string MacroActionSceneLock::GetShortDesc() const
return "";
}
std::shared_ptr<MacroAction> MacroActionSceneLock::Create(Macro *m)
{
return std::make_shared<MacroActionSceneLock>(m);
}
std::shared_ptr<MacroAction> MacroActionSceneLock::Copy() const
{
return std::make_shared<MacroActionSceneLock>(*this);
}
static inline void populateActionSelection(QComboBox *list)
{
for (const auto &[_, name] : actionTypes) {
@@ -94,6 +103,12 @@ static inline void populateActionSelection(QComboBox *list)
}
}
void MacroActionSceneLock::ResolveVariablesToFixedValues()
{
_scene.ResolveVariables();
_source.ResolveVariables();
}
MacroActionSceneLockEdit::MacroActionSceneLockEdit(
QWidget *parent, std::shared_ptr<MacroActionSceneLock> entryData)
: QWidget(parent),