mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-07-19 17:49:14 +00:00
UI: Add virtual camera to system tray
Adds ability to start and stop the virtual camera from the system tray.
This commit is contained in:
parent
2e82a6c7e8
commit
e38d8f10a6
|
@ -6298,6 +6298,7 @@ void OBSBasic::OnVirtualCamStart()
|
|||
return;
|
||||
|
||||
vcamButton->setText(QTStr("Basic.Main.StopVirtualCam"));
|
||||
sysTrayVirtualCam->setText(QTStr("Basic.Main.StopVirtualCam"));
|
||||
vcamButton->setChecked(true);
|
||||
|
||||
if (api)
|
||||
|
@ -6314,6 +6315,7 @@ void OBSBasic::OnVirtualCamStop(int)
|
|||
return;
|
||||
|
||||
vcamButton->setText(QTStr("Basic.Main.StartVirtualCam"));
|
||||
sysTrayVirtualCam->setText(QTStr("Basic.Main.StartVirtualCam"));
|
||||
vcamButton->setChecked(false);
|
||||
|
||||
if (api)
|
||||
|
@ -7605,6 +7607,8 @@ void OBSBasic::SystemTrayInit()
|
|||
trayIcon.data());
|
||||
sysTrayReplayBuffer = new QAction(QTStr("Basic.Main.StartReplayBuffer"),
|
||||
trayIcon.data());
|
||||
sysTrayVirtualCam = new QAction(QTStr("Basic.Main.StartVirtualCam"),
|
||||
trayIcon.data());
|
||||
exit = new QAction(QTStr("Exit"), trayIcon.data());
|
||||
|
||||
trayMenu = new QMenu;
|
||||
|
@ -7620,6 +7624,7 @@ void OBSBasic::SystemTrayInit()
|
|||
trayMenu->addAction(sysTrayStream);
|
||||
trayMenu->addAction(sysTrayRecord);
|
||||
trayMenu->addAction(sysTrayReplayBuffer);
|
||||
trayMenu->addAction(sysTrayVirtualCam);
|
||||
trayMenu->addAction(exit);
|
||||
trayIcon->setContextMenu(trayMenu);
|
||||
trayIcon->show();
|
||||
|
@ -7627,6 +7632,8 @@ void OBSBasic::SystemTrayInit()
|
|||
if (outputHandler && !outputHandler->replayBuffer)
|
||||
sysTrayReplayBuffer->setEnabled(false);
|
||||
|
||||
sysTrayVirtualCam->setEnabled(vcamEnabled);
|
||||
|
||||
connect(trayIcon.data(),
|
||||
SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this,
|
||||
SLOT(IconActivated(QSystemTrayIcon::ActivationReason)));
|
||||
|
@ -7637,6 +7644,8 @@ void OBSBasic::SystemTrayInit()
|
|||
SLOT(on_recordButton_clicked()));
|
||||
connect(sysTrayReplayBuffer.data(), &QAction::triggered, this,
|
||||
&OBSBasic::ReplayBufferClicked);
|
||||
connect(sysTrayVirtualCam.data(), &QAction::triggered, this,
|
||||
&OBSBasic::VCamButtonClicked);
|
||||
connect(exit, SIGNAL(triggered()), this, SLOT(close()));
|
||||
}
|
||||
|
||||
|
|
|
@ -265,6 +265,7 @@ private:
|
|||
QPointer<QAction> sysTrayStream;
|
||||
QPointer<QAction> sysTrayRecord;
|
||||
QPointer<QAction> sysTrayReplayBuffer;
|
||||
QPointer<QAction> sysTrayVirtualCam;
|
||||
QPointer<QAction> showHide;
|
||||
QPointer<QAction> exit;
|
||||
QPointer<QMenu> trayMenu;
|
||||
|
|
Loading…
Reference in a new issue