mirror of
https://github.com/WarmUpTill/SceneSwitcher.git
synced 2026-04-07 09:45:44 -05:00
Add option to expand or collapse all macro actions or conditions
This commit is contained in:
parent
058af0d3bb
commit
95409dfa26
|
|
@ -68,6 +68,8 @@ AdvSceneSwitcher.macroTab.name="Name:"
|
|||
AdvSceneSwitcher.macroTab.defaultname="Macro %1"
|
||||
AdvSceneSwitcher.macroTab.exists="Macro name exists already"
|
||||
AdvSceneSwitcher.macroTab.copy="Create copy"
|
||||
AdvSceneSwitcher.macroTab.expandAll="Expand all"
|
||||
AdvSceneSwitcher.macroTab.collapseAll="Collapse all"
|
||||
|
||||
; Macro Logic
|
||||
AdvSceneSwitcher.logic.none="Ignore entry"
|
||||
|
|
|
|||
|
|
@ -115,8 +115,14 @@ public slots:
|
|||
void on_conditionRemove_clicked();
|
||||
void on_actionAdd_clicked();
|
||||
void on_actionRemove_clicked();
|
||||
void showMacroContextMenu(const QPoint &);
|
||||
void copyMacro();
|
||||
void ShowMacroContextMenu(const QPoint &);
|
||||
void ShowMacroActionsContextMenu(const QPoint &);
|
||||
void ShowMacroConditionsContextMenu(const QPoint &);
|
||||
void CopyMacro();
|
||||
void ExpandAllActions();
|
||||
void ExpandAllConditions();
|
||||
void CollapseAllActions();
|
||||
void CollapseAllConditions();
|
||||
void AddMacroAction(int idx);
|
||||
void RemoveMacroAction(int idx);
|
||||
void MoveMacroActionUp(int idx);
|
||||
|
|
|
|||
|
|
@ -300,22 +300,52 @@ void AdvSceneSwitcher::setupMacroTab()
|
|||
}
|
||||
|
||||
ui->macros->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||
connect(ui->macros, SIGNAL(customContextMenuRequested(QPoint)), this,
|
||||
SLOT(showMacroContextMenu(QPoint)));
|
||||
connect(ui->macros, &QWidget::customContextMenuRequested, this,
|
||||
&AdvSceneSwitcher::ShowMacroContextMenu);
|
||||
ui->macroActions->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||
connect(ui->macroActions, &QWidget::customContextMenuRequested, this,
|
||||
&AdvSceneSwitcher::ShowMacroActionsContextMenu);
|
||||
ui->macroConditions->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||
connect(ui->macroConditions, &QWidget::customContextMenuRequested, this,
|
||||
&AdvSceneSwitcher::ShowMacroConditionsContextMenu);
|
||||
|
||||
ui->macroEdit->setDisabled(true);
|
||||
}
|
||||
|
||||
void AdvSceneSwitcher::showMacroContextMenu(const QPoint &pos)
|
||||
void AdvSceneSwitcher::ShowMacroContextMenu(const QPoint &pos)
|
||||
{
|
||||
QPoint globalPos = ui->macros->mapToGlobal(pos);
|
||||
QMenu myMenu;
|
||||
myMenu.addAction(obs_module_text("AdvSceneSwitcher.macroTab.copy"),
|
||||
this, SLOT(copyMacro()));
|
||||
this, &AdvSceneSwitcher::CopyMacro);
|
||||
myMenu.exec(globalPos);
|
||||
}
|
||||
|
||||
void AdvSceneSwitcher::copyMacro()
|
||||
void AdvSceneSwitcher::ShowMacroActionsContextMenu(const QPoint &pos)
|
||||
{
|
||||
QPoint globalPos = ui->macroActions->mapToGlobal(pos);
|
||||
QMenu myMenu;
|
||||
myMenu.addAction(obs_module_text("AdvSceneSwitcher.macroTab.expandAll"),
|
||||
this, &AdvSceneSwitcher::ExpandAllActions);
|
||||
myMenu.addAction(
|
||||
obs_module_text("AdvSceneSwitcher.macroTab.collapseAll"), this,
|
||||
&AdvSceneSwitcher::CollapseAllActions);
|
||||
myMenu.exec(globalPos);
|
||||
}
|
||||
|
||||
void AdvSceneSwitcher::ShowMacroConditionsContextMenu(const QPoint &pos)
|
||||
{
|
||||
QPoint globalPos = ui->macroConditions->mapToGlobal(pos);
|
||||
QMenu myMenu;
|
||||
myMenu.addAction(obs_module_text("AdvSceneSwitcher.macroTab.expandAll"),
|
||||
this, &AdvSceneSwitcher::ExpandAllConditions);
|
||||
myMenu.addAction(
|
||||
obs_module_text("AdvSceneSwitcher.macroTab.collapseAll"), this,
|
||||
&AdvSceneSwitcher::CollapseAllConditions);
|
||||
myMenu.exec(globalPos);
|
||||
}
|
||||
|
||||
void AdvSceneSwitcher::CopyMacro()
|
||||
{
|
||||
obs_data_t *data = obs_data_create();
|
||||
getSelectedMacro()->Save(data);
|
||||
|
|
@ -337,3 +367,55 @@ void AdvSceneSwitcher::copyMacro()
|
|||
item->setCheckState(Qt::Checked);
|
||||
ui->macros->setCurrentItem(item);
|
||||
}
|
||||
|
||||
void AdvSceneSwitcher::ExpandAllActions()
|
||||
{
|
||||
auto m = getSelectedMacro();
|
||||
if (!m) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (auto &a : m->Actions()) {
|
||||
a->SetCollapsed(false);
|
||||
}
|
||||
SetEditMacro(*m);
|
||||
}
|
||||
|
||||
void AdvSceneSwitcher::ExpandAllConditions()
|
||||
{
|
||||
auto m = getSelectedMacro();
|
||||
if (!m) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (auto &c : m->Conditions()) {
|
||||
c->SetCollapsed(false);
|
||||
}
|
||||
SetEditMacro(*m);
|
||||
}
|
||||
|
||||
void AdvSceneSwitcher::CollapseAllActions()
|
||||
{
|
||||
auto m = getSelectedMacro();
|
||||
if (!m) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (auto &a : m->Actions()) {
|
||||
a->SetCollapsed(true);
|
||||
}
|
||||
SetEditMacro(*m);
|
||||
}
|
||||
|
||||
void AdvSceneSwitcher::CollapseAllConditions()
|
||||
{
|
||||
auto m = getSelectedMacro();
|
||||
if (!m) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (auto &c : m->Conditions()) {
|
||||
c->SetCollapsed(true);
|
||||
}
|
||||
SetEditMacro(*m);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user