mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-07-19 17:49:14 +00:00
UI: Make assignDockToggle an actual function
Allows using it outside of the constructor.
This commit is contained in:
parent
b89c2b76d3
commit
412520c5d0
|
@ -161,6 +161,27 @@ static int CountVideoSources()
|
|||
return count;
|
||||
}
|
||||
|
||||
void assignDockToggle(QDockWidget *dock, QAction *action)
|
||||
{
|
||||
auto handleWindowToggle = [action] (bool vis)
|
||||
{
|
||||
action->blockSignals(true);
|
||||
action->setChecked(vis);
|
||||
action->blockSignals(false);
|
||||
};
|
||||
auto handleMenuToggle = [dock] (bool check)
|
||||
{
|
||||
dock->blockSignals(true);
|
||||
dock->setVisible(check);
|
||||
dock->blockSignals(false);
|
||||
};
|
||||
|
||||
dock->connect(dock->toggleViewAction(), &QAction::toggled,
|
||||
handleWindowToggle);
|
||||
dock->connect(action, &QAction::toggled,
|
||||
handleMenuToggle);
|
||||
}
|
||||
|
||||
OBSBasic::OBSBasic(QWidget *parent)
|
||||
: OBSMainWindow (parent),
|
||||
ui (new Ui::OBSBasic)
|
||||
|
@ -285,27 +306,6 @@ OBSBasic::OBSBasic(QWidget *parent)
|
|||
addNudge(Qt::Key_Left, SLOT(NudgeLeft()));
|
||||
addNudge(Qt::Key_Right, SLOT(NudgeRight()));
|
||||
|
||||
auto assignDockToggle = [] (QDockWidget *dock, QAction *action)
|
||||
{
|
||||
auto handleWindowToggle = [action] (bool vis)
|
||||
{
|
||||
action->blockSignals(true);
|
||||
action->setChecked(vis);
|
||||
action->blockSignals(false);
|
||||
};
|
||||
auto handleMenuToggle = [dock] (bool check)
|
||||
{
|
||||
dock->blockSignals(true);
|
||||
dock->setVisible(check);
|
||||
dock->blockSignals(false);
|
||||
};
|
||||
|
||||
dock->connect(dock->toggleViewAction(), &QAction::toggled,
|
||||
handleWindowToggle);
|
||||
dock->connect(action, &QAction::toggled,
|
||||
handleMenuToggle);
|
||||
};
|
||||
|
||||
assignDockToggle(ui->scenesDock, ui->toggleScenes);
|
||||
assignDockToggle(ui->sourcesDock, ui->toggleSources);
|
||||
assignDockToggle(ui->mixerDock, ui->toggleMixer);
|
||||
|
|
Loading…
Reference in a new issue