diff --git a/forms/advanced-scene-switcher.ui b/forms/advanced-scene-switcher.ui
index 9a1575af..a00e604d 100644
--- a/forms/advanced-scene-switcher.ui
+++ b/forms/advanced-scene-switcher.ui
@@ -799,7 +799,7 @@
Qt::Vertical
-
+
0
@@ -941,7 +941,7 @@
-
+
0
diff --git a/src/headers/advanced-scene-switcher.hpp b/src/headers/advanced-scene-switcher.hpp
index 0696fead..0a499c5b 100644
--- a/src/headers/advanced-scene-switcher.hpp
+++ b/src/headers/advanced-scene-switcher.hpp
@@ -52,6 +52,7 @@ public:
bool addNewMacro(std::string &name, std::string format = "");
Macro *getSelectedMacro();
void SetEditMacro(Macro &m);
+ void SetMacroEditAreaDisabled(bool);
void HighlightAction(int idx);
void HighlightCondition(int idx);
void PopulateMacroActions(Macro &m, uint32_t afterIdx = 0);
diff --git a/src/macro-tab.cpp b/src/macro-tab.cpp
index 7835835d..31a25a5a 100644
--- a/src/macro-tab.cpp
+++ b/src/macro-tab.cpp
@@ -312,13 +312,24 @@ void AdvSceneSwitcher::SetEditMacro(Macro &m)
PopulateMacroConditions(m);
PopulateMacroActions(m);
- ui->macroEdit->setDisabled(false);
+ SetMacroEditAreaDisabled(false);
currentActionIdx = -1;
currentConditionIdx = -1;
HighlightControls();
}
+void AdvSceneSwitcher::SetMacroEditAreaDisabled(bool disable)
+{
+ ui->macroName->setDisabled(disable);
+ ui->runMacro->setDisabled(disable);
+ ui->runMacroInParallel->setDisabled(disable);
+ ui->runMacroOnChange->setDisabled(disable);
+ ui->macroActions->setDisabled(disable);
+ ui->macroConditions->setDisabled(disable);
+ ui->macroSplitter->setDisabled(disable);
+}
+
void AdvSceneSwitcher::HighlightAction(int idx)
{
actionsList->Highlight(idx);
@@ -348,7 +359,7 @@ void AdvSceneSwitcher::on_macros_currentRowChanged(int idx)
}
if (idx == -1) {
- ui->macroEdit->setDisabled(true);
+ SetMacroEditAreaDisabled(true);
return;
}
@@ -460,8 +471,7 @@ void AdvSceneSwitcher::setupMacroTab()
connect(conditionsList, &QWidget::customContextMenuRequested, this,
&AdvSceneSwitcher::ShowMacroConditionsContextMenu);
- ui->macroEdit->setDisabled(true);
-
+ SetMacroEditAreaDisabled(true);
ui->macroPriorityWarning->setVisible(
switcher->functionNamesByPriority[0] != macro_func);